Archived
1
0
Fork 0

Merge branch 'master' into mesa-updates

Change-Id: I0c6e2410c51335c68634738be030e374f5b492e9
This commit is contained in:
John Kehayias 2023-12-16 23:14:56 -05:00
commit 17c3a3bfff
No known key found for this signature in database
GPG key ID: 499097AE5EA815D9
198 changed files with 37342 additions and 64469 deletions

View file

@ -62,8 +62,7 @@
(name "lbraun")) (name "lbraun"))
("ACC2 3BA0 59F7 CCF4 08F0 43AD 442A 84B8 C70E 2F87" ("ACC2 3BA0 59F7 CCF4 08F0 43AD 442A 84B8 C70E 2F87"
(name "lilyp")) (name "lilyp"))
(;; primary: "4F71 6F9A 8FA2 C80E F1B5 E1BA 5E35 F231 DE1A C5E0" ("6840 722E EEE4 D3A6 4EE5 3EAC 6AAC 1963 757F 47FF"
"B051 5948 F1E7 D3C1 B980 38A0 2646 FA30 BACA 7F08"
(name "lfam")) (name "lfam"))
("BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA" ("BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA"
(name "mbakke")) (name "mbakke"))

View file

@ -138,6 +138,7 @@ MODULES = \
guix/ipfs.scm \ guix/ipfs.scm \
guix/platform.scm \ guix/platform.scm \
guix/platforms/arm.scm \ guix/platforms/arm.scm \
guix/platforms/avr.scm \
guix/platforms/mips.scm \ guix/platforms/mips.scm \
guix/platforms/powerpc.scm \ guix/platforms/powerpc.scm \
guix/platforms/riscv.scm \ guix/platforms/riscv.scm \
@ -420,10 +421,6 @@ AUX_FILES = \
gnu/packages/aux-files/linux-libre/6.6-arm64.conf \ gnu/packages/aux-files/linux-libre/6.6-arm64.conf \
gnu/packages/aux-files/linux-libre/6.6-i686.conf \ gnu/packages/aux-files/linux-libre/6.6-i686.conf \
gnu/packages/aux-files/linux-libre/6.6-x86_64.conf \ gnu/packages/aux-files/linux-libre/6.6-x86_64.conf \
gnu/packages/aux-files/linux-libre/6.5-arm.conf \
gnu/packages/aux-files/linux-libre/6.5-arm64.conf \
gnu/packages/aux-files/linux-libre/6.5-i686.conf \
gnu/packages/aux-files/linux-libre/6.5-x86_64.conf \
gnu/packages/aux-files/linux-libre/6.1-arm.conf \ gnu/packages/aux-files/linux-libre/6.1-arm.conf \
gnu/packages/aux-files/linux-libre/6.1-arm64.conf \ gnu/packages/aux-files/linux-libre/6.1-arm64.conf \
gnu/packages/aux-files/linux-libre/6.1-i686.conf \ gnu/packages/aux-files/linux-libre/6.1-i686.conf \

View file

@ -76,15 +76,17 @@ all the dependencies and appropriate environment variables are set up to
hack on Guix: hack on Guix:
@example @example
guix shell -D guix --pure guix shell -D guix -CPW
@end example @end example
or even, from within a Git worktree for Guix: or even, from within a Git worktree for Guix:
@example @example
guix shell --pure guix shell -CPW
@end example @end example
If @option{-C} (short for @option{--container}) is not supported on your
system, try @command{--pure} instead of @option{-CPW}.
@xref{Invoking guix shell}, for more information on that command. @xref{Invoking guix shell}, for more information on that command.
If you are unable to use Guix when building Guix from a checkout, the If you are unable to use Guix when building Guix from a checkout, the
@ -1682,6 +1684,11 @@ command to submit patches. To list the available actions of the script,
you can invoke it via the @command{etc/teams.scm help} command. For you can invoke it via the @command{etc/teams.scm help} command. For
more information regarding teams, @pxref{Teams}. more information regarding teams, @pxref{Teams}.
@quotation Note
On foreign distros, you might have to use @command{./pre-inst-env git
send-email} for @file{etc/teams.scm} to work.
@end quotation
@unnumberedsubsubsec Multiple Patches @unnumberedsubsubsec Multiple Patches
@anchor{Multiple Patches} @anchor{Multiple Patches}
@cindex cover letter @cindex cover letter

View file

@ -119,6 +119,9 @@ Copyright @copyright{} 2023 Tanguy Le Carrour@*
Copyright @copyright{} 2023 Zheng Junjie@* Copyright @copyright{} 2023 Zheng Junjie@*
Copyright @copyright{} 2023 Brian Cully@* Copyright @copyright{} 2023 Brian Cully@*
Copyright @copyright{} 2023 Felix Lechner@* Copyright @copyright{} 2023 Felix Lechner@*
Copyright @copyright{} 2023 Foundation Devices, Inc.@*
Copyright @copyright{} 2023 Thomas Ieong@*
Copyright @copyright{} 2023 Saku Laesvuori@*
Permission is granted to copy, distribute and/or modify this document Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or under the terms of the GNU Free Documentation License, Version 1.3 or
@ -4058,6 +4061,7 @@ guix-daemon}). It can also be disabled temporarily by passing the
@node Getting Substitutes from Other Servers @node Getting Substitutes from Other Servers
@subsection Getting Substitutes from Other Servers @subsection Getting Substitutes from Other Servers
@c Note: This section name appears in a hint printed by 'guix weather'.
@cindex substitute servers, adding more @cindex substitute servers, adding more
Guix can look up and fetch substitutes from several servers. This is Guix can look up and fetch substitutes from several servers. This is
@ -4157,6 +4161,21 @@ can list as many substitute servers as you like, with the caveat that
substitute lookup can be slowed down if too many servers need to be substitute lookup can be slowed down if too many servers need to be
contacted. contacted.
@quotation Troubleshooting
To diagnose problems, you can run @command{guix weather}. For example,
running:
@example
guix weather coreutils
@end example
@noindent
not only tells you which of the currently-configured servers has
substitutes for the @code{coreutils} package, it also reports whether
one of these servers is unauthorized. @xref{Invoking guix weather}, for
more information.
@end quotation
Note that there are also situations where one may want to add the URL of Note that there are also situations where one may want to add the URL of
a substitute server @emph{without} authorizing its key. a substitute server @emph{without} authorizing its key.
@xref{Substitute Authentication}, to understand this fine point. @xref{Substitute Authentication}, to understand this fine point.
@ -7975,6 +7994,10 @@ The exact set of supported keywords depends on the build system
@code{#:phases}. The @code{#:phases} keyword in particular lets you @code{#:phases}. The @code{#:phases} keyword in particular lets you
modify the set of build phases for your package (@pxref{Build Phases}). modify the set of build phases for your package (@pxref{Build Phases}).
The REPL has dedicated commands to interactively inspect values of some
of these arguments, as a convenient debugging aid (@pxref{Using Guix
Interactively}).
@quotation Compatibility Note @quotation Compatibility Note
Until version 1.3.0, the @code{arguments} field would typically use Until version 1.3.0, the @code{arguments} field would typically use
@code{quote} (@code{'}) or @code{quasiquote} (@code{`}) and no @code{quote} (@code{'}) or @code{quasiquote} (@code{`}) and no
@ -8774,6 +8797,23 @@ when @var{cut?} returns true for a given package. When @var{deep?} is true, @va
applied to implicit inputs as well. applied to implicit inputs as well.
@end deffn @end deffn
@quotation Tips
Understanding what a variant really looks like can be difficult as one
starts combining the tools shown above. There are several ways to
inspect a package before attempting to build it that can prove handy:
@itemize
@item
You can inspect the package interactively at the REPL, for instance to
view its inputs, the code of its build phases, or its configure flags
(@pxref{Using Guix Interactively}).
@item
When rewriting dependencies, @command{guix graph} can often help
visualize the changes that are made (@pxref{Invoking guix graph}).
@end itemize
@end quotation
@node Writing Manifests @node Writing Manifests
@section Writing Manifests @section Writing Manifests
@ -10585,6 +10625,11 @@ we have seen before. @xref{Build Utilities}, for more about
the helpers used by this phase, and for more examples of the helpers used by this phase, and for more examples of
@code{modify-phases}. @code{modify-phases}.
@quotation Tip
You can inspect the code associated with a package's @code{#:phases}
argument interactively, at the REPL (@pxref{Using Guix Interactively}).
@end quotation
@cindex code staging @cindex code staging
@cindex staging, of code @cindex staging, of code
Keep in mind that build phases are code evaluated at the time the Keep in mind that build phases are code evaluated at the time the
@ -12763,6 +12808,30 @@ scheme@@(guix-user)> (scandir (string-append $3 "/bin"))
$5 = ("." ".." "egrep" "fgrep" "grep") $5 = ("." ".." "egrep" "fgrep" "grep")
@end example @end example
As a packager, you may be willing to inspect the build phases or flags
of a given package; this is particularly useful when relying a lot on
inheritance to define package variants (@pxref{Defining Package
Variants}) or when package arguments are a result of some computation,
both of which can make it harder to foresee what ends up in the package
arguments. Additional commands let you inspect those package arguments:
@example
scheme@@(guix-user)> ,phases grep
$1 = (modify-phases %standard-phases
(add-after 'install 'fix-egrep-and-fgrep
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(substitute* (list (string-append bin "/egrep")
(string-append bin "/fgrep"))
(("^exec grep")
(string-append "exec " bin "/grep")))))))
scheme@@(guix-user)> ,configure-flags findutils
$2 = (list "--localstatedir=/var")
scheme@@(guix-user)> ,make-flags binutils
$3 = '("MAKEINFO=true")
@end example
At a lower-level, a useful command is @code{lower}: it takes a file-like At a lower-level, a useful command is @code{lower}: it takes a file-like
object and ``lowers'' it into a derivation (@pxref{Derivations}) or a object and ``lowers'' it into a derivation (@pxref{Derivations}) or a
store file: store file:
@ -12794,6 +12863,17 @@ This is similar to the @option{--verbosity} command-line option
shows build events only, and higher levels print build logs. shows build events only, and higher levels print build logs.
@end deffn @end deffn
@deffn {REPL command} phases @var{package}
@deffnx {REPL command} configure-flags @var{package}
@deffnx {REPL command} make-flags @var{package}
These REPL commands return the value of one element of the
@code{arguments} field of @var{package} (@pxref{package Reference}): the
first one show the staged code associated with @code{#:phases}
(@pxref{Build Phases}), the second shows the code for
@code{#:configure-flags}, and @code{,make-flags} returns the code for
@code{#:make-flags}.
@end deffn
@deffn {REPL command} run-in-store @var{exp} @deffn {REPL command} run-in-store @var{exp}
Run @var{exp}, a monadic expression, through the store monad. Run @var{exp}, a monadic expression, through the store monad.
@xref{The Store Monad}, for more information. @xref{The Store Monad}, for more information.
@ -16437,7 +16517,10 @@ up building packages by yourself (@pxref{Substitutes}). The
specified servers so you can have an idea of whether you'll be grumpy specified servers so you can have an idea of whether you'll be grumpy
today. It can sometimes be useful info as a user, but it is primarily today. It can sometimes be useful info as a user, but it is primarily
useful to people running @command{guix publish} (@pxref{Invoking guix useful to people running @command{guix publish} (@pxref{Invoking guix
publish}). publish}). Sometimes substitutes @emph{are} available but they are not
authorized on your system; @command{guix weather} reports it so you can
authorize them if you want (@pxref{Getting Substitutes from Other
Servers}).
@cindex statistics, for substitutes @cindex statistics, for substitutes
@cindex availability of substitutes @cindex availability of substitutes
@ -16504,8 +16587,9 @@ The available options are listed below.
@table @code @table @code
@item --substitute-urls=@var{urls} @item --substitute-urls=@var{urls}
@var{urls} is the space-separated list of substitute server URLs to @var{urls} is the space-separated list of substitute server URLs to
query. When this option is omitted, the default set of substitute query. When this option is omitted, the URLs specified with the
servers is queried. @option{--substitute-urls} option of @command{guix-daemon} are used or,
as a last resort, the default set of substitute URLs.
@item --system=@var{system} @item --system=@var{system}
@itemx -s @var{system} @itemx -s @var{system}
@ -16699,6 +16783,7 @@ The available targets are:
- aarch64-linux-gnu - aarch64-linux-gnu
- arm-linux-gnueabihf - arm-linux-gnueabihf
- avr
- i586-pc-gnu - i586-pc-gnu
- i686-linux-gnu - i686-linux-gnu
- i686-w64-mingw32 - i686-w64-mingw32
@ -19316,7 +19401,8 @@ and DNS-SD.
@anchor{guix-configuration-build-machines} @anchor{guix-configuration-build-machines}
@item @code{build-machines} (default: @code{#f}) @item @code{build-machines} (default: @code{#f})
This field must be either @code{#f} or a list of gexps evaluating to a This field must be either @code{#f} or a list of gexps evaluating to a
@code{build-machine} record (@pxref{Daemon Offload Setup}). @code{build-machine} record or to a list of @code{build-machine} records
(@pxref{Daemon Offload Setup}).
When it is @code{#f}, the @file{/etc/guix/machines.scm} file is left When it is @code{#f}, the @file{/etc/guix/machines.scm} file is left
untouched. Otherwise, the list of of gexps is written to untouched. Otherwise, the list of of gexps is written to
@ -19385,7 +19471,8 @@ A list of file-like objects where each element contains a public key.
A list of strings where each element is a substitute URL. A list of strings where each element is a substitute URL.
@item @code{build-machines} (default: @code{'()}) @item @code{build-machines} (default: @code{'()})
A list of gexps that evaluate to @code{build-machine} records A list of gexps that evaluate to @code{build-machine} records or to a list of
@code{build-machine} records.
(@pxref{Daemon Offload Setup}). (@pxref{Daemon Offload Setup}).
Using this field, a service may add new build machines to receive builds Using this field, a service may add new build machines to receive builds
@ -27554,6 +27641,66 @@ on TCP port 5232 of @code{localhost} and use the @code{htpasswd} file at
@end table @end table
@end deftp @end deftp
@subsubheading Rspamd Service
@cindex email
@cindex spam
@defvar rspamd-service-type
This is the type of the @uref{https://rspamd.com/, Rspamd} filtering
system whose value should be a @code{rspamd-configuration}.
@end defvar
@c %start of fragment
@deftp {Data Type} rspamd-configuration
Available @code{rspamd-configuration} fields are:
@table @asis
@item @code{package} (default: @code{rspamd}) (type: file-like)
The package that provides rspamd.
@item @code{config-file} (default: @code{%default-rspamd-config-file}) (type: file-like)
File-like object of the configuration file to use. By default all
workers are enabled except fuzzy and they are binded to their usual
ports, e.g localhost:11334, localhost:11333 and so on
@item @code{local.d-files} (default: @code{()}) (type: directory-tree)
Configuration files in local.d, provided as a list of two element lists
where the first element is the filename and the second one is a
file-like object. Settings in these files will be merged with the
defaults.
@item @code{override.d-files} (default: @code{()}) (type: directory-tree)
Configuration files in override.d, provided as a list of two element
lists where the first element is the filename and the second one is a
file-like object. Settings in these files will override the defaults.
@item @code{user} (default: @code{%default-rspamd-account}) (type: user-account)
The user to run rspamd as.
@item @code{group} (default: @code{%default-rspamd-group}) (type: user-group)
The group to run rspamd as.
@item @code{debug?} (default: @code{#f}) (type: boolean)
Force debug output.
@item @code{insecure?} (default: @code{#f}) (type: boolean)
Ignore running workers as privileged users.
@item @code{skip-template?} (default: @code{#f}) (type: boolean)
Do not apply Jinja templates.
@item @code{shepherd-requirements} (default: @code{(loopback)}) (type: list-of-symbols)
This is a list of symbols naming Shepherd services that this service
will depend on.
@end table
@end deftp
@c %end of fragment
@node Messaging Services @node Messaging Services
@subsection Messaging Services @subsection Messaging Services
@ -45789,6 +45936,11 @@ Platform targeting x86 CPU running GNU/Hurd (also referred to as
``GNU''). ``GNU'').
@end defvar @end defvar
@defvar avr
Platform targeting AVR CPUs without an operating system, with run-time support
from AVR Libc.
@end defvar
@node System Images @node System Images
@chapter Creating System Images @chapter Creating System Images

View file

@ -139,7 +139,8 @@ _guix_is_dash_f ()
{ {
_guix_is_short_option f || _guix_is_short_option f ||
_guix_is_long_option file || _guix_is_long_option file ||
_guix_is_long_option install-from-file _guix_is_long_option install-from-file ||
_guix_is_long_option whole-file
} }
_guix_is_dash_l () _guix_is_dash_l ()
@ -333,6 +334,14 @@ _guix_complete ()
else else
_guix_complete_available_package "$word_at_point" _guix_complete_available_package "$word_at_point"
fi fi
elif [[ "$command" = "style" ]]
then
if _guix_is_dash_f
then
_guix_complete_file
else
_guix_complete_available_package "$word_at_point"
fi
else else
_guix_complete_available_package "$word_at_point" _guix_complete_available_package "$word_at_point"
fi fi

View file

@ -48,6 +48,12 @@
;; Search path for target headers when cross-compiling. ;; Search path for target headers when cross-compiling.
(map (cut string-append "CROSS_" <>) %gcc-include-paths)) (map (cut string-append "CROSS_" <>) %gcc-include-paths))
(define* (patch-genmultilib-shebang #:key inputs native-inputs #:allow-other-keys)
"Patch-shebang in the gcc/genmultilib file doesn't work as it contains several
scripts inside, each with a #!/bin/sh that needs patching."
(substitute* "gcc/genmultilib"
(("#!/bin/sh") (string-append "#!" (which "sh")))))
(define* (make-cross-binutils-visible #:key outputs inputs target (define* (make-cross-binutils-visible #:key outputs inputs target
#:allow-other-keys) #:allow-other-keys)
"Create symlinks for 'as', 'nm', and 'ld' in the \"out\" output, under "Create symlinks for 'as', 'nm', and 'ld' in the \"out\" output, under
@ -162,6 +168,31 @@ C_*INCLUDE_PATH."
(cons "LIBRARY_PATH" %gcc-include-paths)) (cons "LIBRARY_PATH" %gcc-include-paths))
#t)) #t))
(define* (set-cross-path/avr #:key inputs #:allow-other-keys)
(match (assoc-ref inputs "libc")
((? string? libc)
(define (cross? x)
;; Return #t if X is a cross-libc.
(string-prefix? libc x))
(let ((cpath (string-append libc "/avr/include")))
(for-each (cut setenv <> cpath)
%gcc-cross-include-paths))
(setenv "CROSS_LIBRARY_PATH"
(string-append libc "/avr/lib"))
(for-each (lambda (var)
(and=> (getenv var)
(lambda (value)
(let* ((path (search-path-as-string->list value))
(native-path (list->search-path-as-string
(remove cross? path) ":")))
(setenv var native-path)))))
(cons "LIBRARY_PATH" %gcc-include-paths)))
;; AVR sans-libc cross-compiler.
(else #t)))
(define (install-strip . _) (define (install-strip . _)
"Install a stripped GCC." "Install a stripped GCC."
;; Unlike our 'strip' phase, this will do the right thing for ;; Unlike our 'strip' phase, this will do the right thing for
@ -173,14 +204,18 @@ C_*INCLUDE_PATH."
"Modify PHASES to include everything needed to build a cross-GCC for TARGET, "Modify PHASES to include everything needed to build a cross-GCC for TARGET,
a target triplet." a target triplet."
(modify-phases phases (modify-phases phases
(add-after 'unpack 'patch-genmultilib-shebang
patch-genmultilib-shebang)
(add-before 'configure 'set-cross-path (add-before 'configure 'set-cross-path
;; This mingw32 target checking logic should match that of target-mingw? ;; This mingw32 target checking logic should match that of target-mingw?
;; in (guix utils), but (guix utils) is too large too copy over to the ;; in (guix utils), but (guix utils) is too large too copy over to the
;; build side entirely and for now we have no way to select variables to ;; build side entirely and for now we have no way to select variables to
;; copy over. See (gnu packages cross-base) for more details. ;; copy over. See (gnu packages cross-base) for more details.
(if (string-suffix? "-mingw32" target) (cond
(cut set-cross-path/mingw #:target target <...>) ((string-suffix? "-mingw32" target)
set-cross-path)) (cut set-cross-path/mingw #:target target <...>))
((string-prefix? "avr" target) set-cross-path/avr)
(#t set-cross-path)))
(add-after 'install 'make-cross-binutils-visible (add-after 'install 'make-cross-binutils-visible
(cut make-cross-binutils-visible #:target target <...>)) (cut make-cross-binutils-visible #:target target <...>))
(replace 'install install-strip))) (replace 'install install-strip)))

View file

@ -29,6 +29,7 @@ when installed, will make the extension contained in PKG available as an
Icecat browser extension. PKG-OUTPUT specifies which output of PKG to use." Icecat browser extension. PKG-OUTPUT specifies which output of PKG to use."
(package (package
(inherit pkg) (inherit pkg)
(location (package-location pkg))
(name (string-append (package-name pkg) "-icecat")) (name (string-append (package-name pkg) "-icecat"))
(native-inputs '()) (native-inputs '())
(inputs '()) (inputs '())

View file

@ -611,10 +611,6 @@ upon error."
the root file system...\n" root-delay) the root file system...\n" root-delay)
(sleep root-delay))) (sleep root-delay)))
;; Prepare the real root file system under /root.
(unless (file-exists? "/root")
(mkdir "/root"))
(when (procedure? pre-mount) (when (procedure? pre-mount)
;; Do whatever actions are needed before mounting the root file ;; Do whatever actions are needed before mounting the root file
;; system--e.g., installing device mappings. Error out when the ;; system--e.g., installing device mappings. Error out when the
@ -631,6 +627,10 @@ the root file system...\n" root-delay)
(false-if-exception ; failure is not fatal (false-if-exception ; failure is not fatal
(resume-if-hibernated (find-long-option "resume" args)))) (resume-if-hibernated (find-long-option "resume" args))))
;; Prepare the real root file system under /root.
(unless (file-exists? "/root")
(mkdir "/root"))
(setenv "EXT2FS_NO_MTAB_OK" "1") (setenv "EXT2FS_NO_MTAB_OK" "1")
;; Mount the root file system. ;; Mount the root file system.

View file

@ -190,15 +190,16 @@ SYSTEM."
(define (pointless? target) (define (pointless? target)
;; Return #t if it makes no sense to cross-build to TARGET from SYSTEM. ;; Return #t if it makes no sense to cross-build to TARGET from SYSTEM.
(match system (or (string=? target "avr") ; Nothing for AVR at this time.
((or "x86_64-linux" "i686-linux") (match system
(if (string-contains target "mingw") ((or "x86_64-linux" "i686-linux")
(not (string=? "x86_64-linux" system)) (if (string-contains target "mingw")
#f)) (not (string=? "x86_64-linux" system))
(_ #f))
;; Don't try to cross-compile from non-Intel platforms: this isn't (_
;; very useful and these are often brittle configurations. ;; Don't try to cross-compile from non-Intel platforms: this isn't
#t))) ;; very useful and these are often brittle configurations.
#t))))
(define (either proc1 proc2 proc3) (define (either proc1 proc2 proc3)
(lambda (x) (lambda (x)

View file

@ -25,6 +25,7 @@
#:use-module (guix deprecation) #:use-module (guix deprecation)
#:use-module (guix diagnostics) #:use-module (guix diagnostics)
#:use-module (guix i18n) #:use-module (guix i18n)
#:use-module ((guix utils) #:select (%current-system))
#:use-module (gnu services) #:use-module (gnu services)
#:use-module (gnu services configuration) #:use-module (gnu services configuration)
#:use-module (guix modules) #:use-module (guix modules)
@ -32,7 +33,7 @@
#:use-module (gnu home services shepherd) #:use-module (gnu home services shepherd)
#:use-module ((gnu home services utils) #:use-module ((gnu home services utils)
#:select (object->camel-case-string)) #:select (object->camel-case-string))
#:autoload (gnu packages base) (glibc-utf8-locales) #:autoload (gnu packages base) (libc-utf8-locales-for-target)
#:use-module (gnu packages ssh) #:use-module (gnu packages ssh)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-9) #:use-module (srfi srfi-9)
@ -357,8 +358,9 @@ inserted after each of them."
;; Support non-ASCII file names. ;; Support non-ASCII file names.
(setenv "GUIX_LOCPATH" (setenv "GUIX_LOCPATH"
#+(file-append glibc-utf8-locales #+(file-append
"/lib/locale")) (libc-utf8-locales-for-target (%current-system))
"/lib/locale"))
(setlocale LC_ALL "en_US.utf8") (setlocale LC_ALL "en_US.utf8")
(call-with-output-file #$output (call-with-output-file #$output

View file

@ -85,9 +85,10 @@ version of this file."
(define set-utf8-locale (define set-utf8-locale
#~(begin #~(begin
(setenv "LOCPATH" (setenv "LOCPATH"
#$(file-append glibc-utf8-locales "/lib/locale/" #$(file-append
(version-major+minor (libc-utf8-locales-for-target) "/lib/locale/"
(package-version glibc-utf8-locales)))) (version-major+minor
(package-version (libc-utf8-locales-for-target)))))
(setlocale LC_ALL "en_US.utf8"))) (setlocale LC_ALL "en_US.utf8")))
(define builder (define builder

View file

@ -31,7 +31,7 @@
# Copyright © 2020 R Veera Kumar <vkor@vkten.in> # Copyright © 2020 R Veera Kumar <vkor@vkten.in>
# Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> # Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
# Copyright © 2020 Michael Rohleder <mike@rohleder.de> # Copyright © 2020 Michael Rohleder <mike@rohleder.de>
# Copyright © 2020, 2021, 2022 Felix Gruber <felgru@posteo.net> # Copyright © 2020, 2021, 2022, 2023 Felix Gruber <felgru@posteo.net>
# Copyright © 2020 Ryan Prior <rprior@protonmail.com> # Copyright © 2020 Ryan Prior <rprior@protonmail.com>
# Copyright © 2020 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl> # Copyright © 2020 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
# Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re> # Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
@ -201,6 +201,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/crates-graphics.scm \ %D%/packages/crates-graphics.scm \
%D%/packages/crates-gtk.scm \ %D%/packages/crates-gtk.scm \
%D%/packages/cross-base.scm \ %D%/packages/cross-base.scm \
%D%/packages/cross-toolchain.scm \
%D%/packages/crypto.scm \ %D%/packages/crypto.scm \
%D%/packages/cryptsetup.scm \ %D%/packages/cryptsetup.scm \
%D%/packages/cups.scm \ %D%/packages/cups.scm \
@ -1182,6 +1183,7 @@ dist_patch_DATA = \
%D%/packages/patches/fp16-implicit-double.patch \ %D%/packages/patches/fp16-implicit-double.patch \
%D%/packages/patches/fp16-system-libraries.patch \ %D%/packages/patches/fp16-system-libraries.patch \
%D%/packages/patches/fpc-reproducibility.patch \ %D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fpc-glibc-2.34-compat.patch \
%D%/packages/patches/fpm-newer-clamp-fix.patch \ %D%/packages/patches/fpm-newer-clamp-fix.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \ %D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freeimage-libtiff-compat.patch \ %D%/packages/patches/freeimage-libtiff-compat.patch \
@ -1435,7 +1437,7 @@ dist_patch_DATA = \
%D%/packages/patches/id3lib-CVE-2007-4460.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \ %D%/packages/patches/id3lib-UTF16-writing-bug.patch \
%D%/packages/patches/idris-test-ffi008.patch \ %D%/packages/patches/idris-test-ffi008.patch \
%D%/packages/patches/igt-gpu-tools-Use-libproc2.patch \ %D%/packages/patches/igraph-fix-varargs-integer-size.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/imagemagick-CVE-2020-27829.patch \ %D%/packages/patches/imagemagick-CVE-2020-27829.patch \
%D%/packages/patches/imagemagick-ReadDCMImage-fix.patch \ %D%/packages/patches/imagemagick-ReadDCMImage-fix.patch \
@ -1728,7 +1730,6 @@ dist_patch_DATA = \
%D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch \ %D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch \
%D%/packages/patches/openjdk-21-fix-rpath.patch \ %D%/packages/patches/openjdk-21-fix-rpath.patch \
%D%/packages/patches/openmpi-mtl-priorities.patch \ %D%/packages/patches/openmpi-mtl-priorities.patch \
%D%/packages/patches/openmw-assume-nonconst-SIGSTKSZ.patch \
%D%/packages/patches/openssh-trust-guix-store-directory.patch \ %D%/packages/patches/openssh-trust-guix-store-directory.patch \
%D%/packages/patches/openresolv-restartcmd-guix.patch \ %D%/packages/patches/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openrgb-unbundle-hueplusplus.patch \ %D%/packages/patches/openrgb-unbundle-hueplusplus.patch \
@ -1751,6 +1752,8 @@ dist_patch_DATA = \
%D%/packages/patches/password-store-tree-compat.patch \ %D%/packages/patches/password-store-tree-compat.patch \
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \ %D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \ %D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/plasp-fix-normalization.patch \
%D%/packages/patches/plasp-include-iostream.patch \
%D%/packages/patches/pocketfft-cpp-prefer-preprocessor-if.patch \ %D%/packages/patches/pocketfft-cpp-prefer-preprocessor-if.patch \
%D%/packages/patches/pokerth-boost.patch \ %D%/packages/patches/pokerth-boost.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \ %D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
@ -1759,6 +1762,8 @@ dist_patch_DATA = \
%D%/packages/patches/prusa-slicer-fix-tests.patch \ %D%/packages/patches/prusa-slicer-fix-tests.patch \
%D%/packages/patches/prusa-slicer-with-cereal-1.3.1.patch \ %D%/packages/patches/prusa-slicer-with-cereal-1.3.1.patch \
%D%/packages/patches/pthreadpool-system-libraries.patch \ %D%/packages/patches/pthreadpool-system-libraries.patch \
%D%/packages/patches/python-accupy-use-matplotx.patch \
%D%/packages/patches/python-accupy-fix-use-of-perfplot.patch \
%D%/packages/patches/python-chai-drop-python2.patch \ %D%/packages/patches/python-chai-drop-python2.patch \
%D%/packages/patches/python-docrepr-fix-tests.patch \ %D%/packages/patches/python-docrepr-fix-tests.patch \
%D%/packages/patches/python-feedparser-missing-import.patch \ %D%/packages/patches/python-feedparser-missing-import.patch \
@ -1768,6 +1773,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-pypdf-annotate-tests-appropriately.patch \ %D%/packages/patches/python-pypdf-annotate-tests-appropriately.patch \
%D%/packages/patches/python-sip-include-dirs.patch \ %D%/packages/patches/python-sip-include-dirs.patch \
%D%/packages/patches/python-sgmllib3k-assertions.patch \ %D%/packages/patches/python-sgmllib3k-assertions.patch \
%D%/packages/patches/python-sphinx-prompt-docutils-0.19.patch \
%D%/packages/patches/python-telingo-fix-comparison.patch \ %D%/packages/patches/python-telingo-fix-comparison.patch \
%D%/packages/patches/python-typeguard-python3.10.patch \ %D%/packages/patches/python-typeguard-python3.10.patch \
%D%/packages/patches/python-wxwidgets-type-errors.patch \ %D%/packages/patches/python-wxwidgets-type-errors.patch \
@ -1937,7 +1943,7 @@ dist_patch_DATA = \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rtags-separate-rct.patch \ %D%/packages/patches/rtags-separate-rct.patch \
%D%/packages/patches/racket-chez-scheme-bin-sh.patch \ %D%/packages/patches/racket-chez-scheme-bin-sh.patch \
%D%/packages/patches/racket-backport-8.10-rktboot.patch \ %D%/packages/patches/racket-backport-8.11-layered-docs.patch \
%D%/packages/patches/racket-rktio-bin-sh.patch \ %D%/packages/patches/racket-rktio-bin-sh.patch \
%D%/packages/patches/racket-zuo-bin-sh.patch \ %D%/packages/patches/racket-zuo-bin-sh.patch \
%D%/packages/patches/remake-impure-dirs.patch \ %D%/packages/patches/remake-impure-dirs.patch \
@ -2173,6 +2179,7 @@ dist_patch_DATA = \
%D%/packages/patches/yggdrasil-extra-config.patch \ %D%/packages/patches/yggdrasil-extra-config.patch \
%D%/packages/patches/zig-0.9-riscv-support.patch \ %D%/packages/patches/zig-0.9-riscv-support.patch \
%D%/packages/patches/zig-do-not-link-against-librt.patch \ %D%/packages/patches/zig-do-not-link-against-librt.patch \
%D%/packages/patches/zig-use-baseline-cpu-by-default.patch \
%D%/packages/patches/zig-use-system-paths.patch \ %D%/packages/patches/zig-use-system-paths.patch \
%D%/packages/patches/zsh-egrep-failing-test.patch %D%/packages/patches/zsh-egrep-failing-test.patch

View file

@ -3942,7 +3942,7 @@ buffers.")
(define-public igt-gpu-tools (define-public igt-gpu-tools
(package (package
(name "igt-gpu-tools") (name "igt-gpu-tools")
(version "1.27.1") (version "1.28")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -3951,9 +3951,7 @@ buffers.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0d6jsj77qddccv0vfmqmbw3k2prvxzvmgc8zdi83gdi3wpp5i7zd")) (base32 "15mnsgzlpd4jkr2zy3jzx0b021g89fa61b8sdm8rjp27gxqkl8mm"))))
(patches
(search-patches "igt-gpu-tools-Use-libproc2.patch"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:tests? #f ; many of the tests try to load kernel modules `(#:tests? #f ; many of the tests try to load kernel modules
@ -3971,7 +3969,8 @@ buffers.")
libdrm libdrm
libpciaccess libpciaccess
libunwind libunwind
procps)) procps
python))
(native-inputs (native-inputs
(list bison flex pkg-config python-docutils)) (list bison flex pkg-config python-docutils))
(home-page "https://gitlab.freedesktop.org/drm/igt-gpu-tools") (home-page "https://gitlab.freedesktop.org/drm/igt-gpu-tools")
@ -4487,7 +4486,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi")) (let ((real-name "inxi"))
(package (package
(name "inxi-minimal") (name "inxi-minimal")
(version "3.3.30-1") (version "3.3.31-2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -4496,7 +4495,7 @@ Python loading in HPC environments.")
(commit version))) (commit version)))
(file-name (git-file-name real-name version)) (file-name (git-file-name real-name version))
(sha256 (sha256
(base32 "0k27m4a19p32c00w4jpmqy17v0ca4g5zixyw97yy12932c73d0dy")))) (base32 "1fca5minalpmizbxh5kmjiv8xrl7k6g91zn8d84fxmbhsk8vn3kk"))))
(build-system trivial-build-system) (build-system trivial-build-system)
(inputs (inputs
(list bash-minimal (list bash-minimal
@ -6006,7 +6005,7 @@ Discover other RouterOS devices or @command{mactelnetd} hosts.
(define-public bfs (define-public bfs
(package (package
(name "bfs") (name "bfs")
(version "3.0.2") (version "3.0.4")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -6015,7 +6014,7 @@ Discover other RouterOS devices or @command{mactelnetd} hosts.
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"055qn2bhnyk9k96w8aviz7v4wip9hwsv7ak1m3yygm1x3fhdyhyz")))) "0n2y9m81278j85m8vk242m9nsxdcw62rxsar4hzwszs6p5cjz5ny"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:make-flags #~(list (string-append "CC=" (list #:make-flags #~(list (string-append "CC="
@ -6035,6 +6034,6 @@ Discover other RouterOS devices or @command{mactelnetd} hosts.
(description (description
"Bfs is a variant of the UNIX @command{find} command that operates "Bfs is a variant of the UNIX @command{find} command that operates
breadth-first rather than depth-first. It is otherwise compatible with many breadth-first rather than depth-first. It is otherwise compatible with many
versions of command{find}, including POSIX, GNU, and *BSD find.") versions of @command{find}, including POSIX, GNU, and *BSD find.")
(home-page "https://tavianator.com/projects/bfs.html") (home-page "https://tavianator.com/projects/bfs.html")
(license license:bsd-0))) (license license:bsd-0)))

View file

@ -1807,7 +1807,10 @@ bad pixel tracking throughout the reduction process.")
(base32 "0vpgcbc9pmx0qqfia1frnwq3jkgfp8y3ikqdnzs5bs1sr13p9p3w")))) (base32 "0vpgcbc9pmx0qqfia1frnwq3jkgfp8y3ikqdnzs5bs1sr13p9p3w"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list #:phases ;; Disable shaky test.
;; See https://github.com/MAVENSDC/cdflib/issues/234
(list #:test-flags #~(list "-k" "not test_compute_cdfepoch16")
#:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-before 'build 'set-env-version (add-before 'build 'set-env-version
(lambda _ (lambda _

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com> ;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; ;;;
@ -29,13 +32,17 @@
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages avr) #:use-module (gnu packages avr)
#:use-module (gnu packages documentation) #:use-module (gnu packages documentation)
#:use-module (gnu packages elf) #:use-module (gnu packages elf)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages llvm)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages version-control) #:use-module (gnu packages version-control)
#:use-module (gnu packages vim)
#:use-module (gnu packages ruby)) #:use-module (gnu packages ruby))
(define-public simavr (define-public simavr
@ -118,6 +125,7 @@ multipart HEX files.")
;; only built). ;; only built).
(list (list
#:tests? #f #:tests? #f
#:target "avr"
#:modules '((guix build gnu-build-system) #:modules '((guix build gnu-build-system)
(guix build utils) (guix build utils)
(ice-9 match) (ice-9 match)
@ -168,7 +176,7 @@ multipart HEX files.")
(mkdir-p dest) (mkdir-p dest)
(copy-recursively html dest))) (copy-recursively html dest)))
html-dirs))))))) html-dirs)))))))
(native-inputs (list doxygen (make-avr-toolchain))) (native-inputs (list doxygen))
(home-page "https://www.lufa-lib.org/") (home-page "https://www.lufa-lib.org/")
(synopsis "Lightweight USB Framework for AVRs") (synopsis "Lightweight USB Framework for AVRs")
(description "UFA is a simple to use, lightweight framework which sits (description "UFA is a simple to use, lightweight framework which sits
@ -178,3 +186,40 @@ package contains the user-submitted projects and bootloaders for use with
compatible microcontroller models, as well as the demos and the compatible microcontroller models, as well as the demos and the
documentation.") documentation.")
(license license:expat))) ;see LUFA/License.txt (license license:expat))) ;see LUFA/License.txt
(define-public microscheme
(package
(name "microscheme")
(version "0.9.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ryansuchocki/microscheme")
(commit (string-append "v" version))))
(sha256
(base32 "1bflwirpcd58bngbs6hgjfwxl894ni2gpdd4pj10pm2mjhyj5dgw"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f ; fails to build otherwise
#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(delete 'configure))
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))))
(native-inputs
(list clang cppcheck unzip xxd))
(home-page "https://github.com/ryansuchocki/microscheme/")
(synopsis "Scheme subset for Atmel microcontrollers")
(description
"Microscheme, or @code{(ms)} for short, is a functional programming
language for the Arduino, and for Atmel 8-bit AVR microcontrollers in general.
Microscheme is a subset of Scheme, in the sense that every valid @code{(ms)}
program is also a valid Scheme program (with the exception of Arduino
hardware-specific primitives). The @code{(ms)} compiler performs function
inlining, and features an aggressive tree-shaker, eliminating unused top-level
definitions. Microscheme has a robust @dfn{Foreign Function Interface} (FFI)
meaning that C code may be invoked directly from (ms) programs.")
(license license:expat)))

View file

@ -1,9 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2014, 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2015, 2017, 2023 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 David Thompson <davet@gnu.org> ;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@ -29,18 +27,14 @@
#:use-module (guix memoization) #:use-module (guix memoization)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cross-base) #:use-module (gnu packages cross-base)
#:use-module (gnu packages flashing-tools) #:use-module (gnu packages flashing-tools)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages llvm) #:export (make-avr-libc
#:use-module (gnu packages vim) make-avr-toolchain))
#:export (make-avr-toolchain))
;;; Commentary: ;;; Commentary:
;;; ;;;
@ -84,18 +78,7 @@
(format #t (format #t
"environment variable `CPLUS_INCLUDE_PATH' \ "environment variable `CPLUS_INCLUDE_PATH' \
changed to ~a~%" changed to ~a~%"
(getenv "CPLUS_INCLUDE_PATH"))))) (getenv "CPLUS_INCLUDE_PATH")))))))))
;; Without a working multilib build, the resulting GCC lacks
;; support for nearly every AVR chip.
(add-after 'unpack 'fix-genmultilib
(lambda _
;; patch-shebang doesn't work here because there are
;; actually several scripts inside this script, each with
;; a #!/bin/sh that needs patching.
(substitute* "gcc/genmultilib"
(("#!/bin/sh") (string-append "#!" (which "sh"))))))))
((#:configure-flags flags)
#~(delete "--disable-multilib" #$flags))))
(native-search-paths (native-search-paths
(list (search-path-specification (list (search-path-specification
(variable "CROSS_C_INCLUDE_PATH") (variable "CROSS_C_INCLUDE_PATH")
@ -119,7 +102,10 @@ changed to ~a~%"
(define make-avr-gcc (define make-avr-gcc
(memoize make-avr-gcc/implementation)) (memoize make-avr-gcc/implementation))
(define* (make-avr-libc/implementation #:key (xgcc gcc)) (define* (make-avr-libc/implementation #:key
(xbinutils (cross-binutils "avr"))
(xgcc (cross-gcc "avr"
#:xbinutils xbinutils)))
(package (package
(name "avr-libc") (name "avr-libc")
(version "2.0.0") (version "2.0.0")
@ -132,12 +118,15 @@ changed to ~a~%"
"15svr2fx8j6prql2il2fc0ppwlv50rpmyckaxx38d3gxxv97zpdj")))) "15svr2fx8j6prql2il2fc0ppwlv50rpmyckaxx38d3gxxv97zpdj"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:out-of-source? #t '(#:target "avr"
#:configure-flags '("--host=avr"))) #:out-of-source? #t
(native-inputs `(("avr-binutils" ,(make-avr-binutils)) ;; Avoid including itself as this package is a target input and cannot
("avr-gcc" ,(make-avr-gcc #:xgcc xgcc)))) ;; use the normal cross compilation inputs.
#:implicit-cross-inputs? #f))
(native-inputs `(("cross-binutils" ,xbinutils)
("cross-gcc" ,xgcc)))
(home-page "https://www.nongnu.org/avr-libc/") (home-page "https://www.nongnu.org/avr-libc/")
(synopsis "The AVR C Library") (synopsis "AVR C Library")
(description (description
"AVR Libc is a project whose goal is to provide a high quality C library "AVR Libc is a project whose goal is to provide a high quality C library
for use with GCC on Atmel AVR microcontrollers.") for use with GCC on Atmel AVR microcontrollers.")
@ -149,7 +138,7 @@ for use with GCC on Atmel AVR microcontrollers.")
(define* (make-avr-toolchain/implementation #:key (xgcc gcc)) (define* (make-avr-toolchain/implementation #:key (xgcc gcc))
(let ((avr-binutils (make-avr-binutils)) (let ((avr-binutils (make-avr-binutils))
(avr-libc (make-avr-libc #:xgcc xgcc)) (avr-libc (make-avr-libc #:xgcc (cross-gcc "avr" #:xgcc xgcc)))
(avr-gcc (make-avr-gcc #:xgcc xgcc))) (avr-gcc (make-avr-gcc #:xgcc xgcc)))
;; avr-libc checks the compiler version and passes "--enable-device-lib" ;; avr-libc checks the compiler version and passes "--enable-device-lib"
;; for avr-gcc > 5.1.0. It wouldn't install the library for atmega32u4 ;; for avr-gcc > 5.1.0. It wouldn't install the library for atmega32u4
@ -175,40 +164,3 @@ C++.")
(define make-avr-toolchain (define make-avr-toolchain
(memoize make-avr-toolchain/implementation)) (memoize make-avr-toolchain/implementation))
(define-public microscheme
(package
(name "microscheme")
(version "0.9.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ryansuchocki/microscheme")
(commit (string-append "v" version))))
(sha256
(base32 "1bflwirpcd58bngbs6hgjfwxl894ni2gpdd4pj10pm2mjhyj5dgw"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f ; fails to build otherwise
#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(delete 'configure))
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))))
(native-inputs
(list clang cppcheck unzip xxd))
(home-page "https://github.com/ryansuchocki/microscheme/")
(synopsis "Scheme subset for Atmel microcontrollers")
(description
"Microscheme, or @code{(ms)} for short, is a functional programming
language for the Arduino, and for Atmel 8-bit AVR microcontrollers in general.
Microscheme is a subset of Scheme, in the sense that every valid @code{(ms)}
program is also a valid Scheme program (with the exception of Arduino
hardware-specific primitives). The @code{(ms)} compiler performs function
inlining, and features an aggressive tree-shaker, eliminating unused top-level
definitions. Microscheme has a robust @dfn{Foreign Function Interface} (FFI)
meaning that C code may be invoked directly from (ms) programs.")
(license license:expat)))

View file

@ -644,13 +644,13 @@ detection, and lossless compression.")
(define-public borg (define-public borg
(package (package
(name "borg") (name "borg")
(version "1.2.6") (version "1.2.7")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "borgbackup" version)) (uri (pypi-uri "borgbackup" version))
(sha256 (sha256
(base32 "178klb3pglhhz553frf928v7zvaiqvri9fbhj33yx7h3hvqgi9mp")) (base32 "06j1v4bw9jkjh6m29ns5sigmp0cslcf0cyy8rrqij11w72ijhgzn"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
#~(begin #~(begin
@ -759,7 +759,7 @@ detection, and lossless compression.")
lz4 lz4
openssl openssl
;; This is the latest version of msgpack accepted by 'setup.py'. ;; This is the latest version of msgpack accepted by 'setup.py'.
python-msgpack-1.0.2 python-msgpack
;; FUSE 3 isn't working well, so we stick with FUSE 2 for now: ;; FUSE 3 isn't working well, so we stick with FUSE 2 for now:
;; <https://issues.guix.gnu.org/53407> ;; <https://issues.guix.gnu.org/53407>
python-llfuse python-llfuse

View file

@ -76,6 +76,8 @@
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)
#:export (glibc #:export (glibc
libc-for-target libc-for-target
libc-locales-for-target
libc-utf8-locales-for-target
make-ld-wrapper make-ld-wrapper
libiconv-if-needed libiconv-if-needed
%final-inputs)) %final-inputs))
@ -1526,6 +1528,26 @@ command.")
(_ (_
glibc))) glibc)))
(define-public glibc-locales/hurd
;; Locales again; hide them because their 'supported-systems' field suggests
;; they're Hurd-only, making them non-installable on GNU/Linux.
(hidden-package
(make-glibc-locales glibc/hurd)))
(define* (libc-locales-for-target #:optional
(target (or (%current-target-system)
(%current-system))))
(if (target-hurd? target)
glibc-locales/hurd
glibc-locales))
(define* (libc-utf8-locales-for-target #:optional
(target (or (%current-target-system)
(%current-system))))
(if (target-hurd? target)
glibc-utf8-locales/hurd
glibc-utf8-locales))
(define-public tzdata (define-public tzdata
(package (package
(name "tzdata") (name "tzdata")

View file

@ -79,14 +79,14 @@
(define-public fio (define-public fio
(package (package
(name "fio") (name "fio")
(version "3.35") (version "3.36")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://brick.kernel.dk/snaps/" (uri (string-append "https://brick.kernel.dk/snaps/"
"fio-" version ".tar.bz2")) "fio-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0dvxv771hzb72zs995wsq3i1kryv8vfzkndd79i0w2v7ssxnldb3")))) "0ppg2rn57diz2mvbbps4cjxd903zn380hdkdsrbzal4l513w32h0"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:modules (list #:modules

View file

@ -2887,13 +2887,13 @@ mass spectrometry} (MS1) data.")
(define-public r-agimicrorna (define-public r-agimicrorna
(package (package
(name "r-agimicrorna") (name "r-agimicrorna")
(version "2.50.0") (version "2.52.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "AgiMicroRna" version)) (uri (bioconductor-uri "AgiMicroRna" version))
(sha256 (sha256
(base32 (base32
"1gydc2sy0lf2h83dzr60w9k3ipqd8h62q6764xpn31girwx70rdz")))) "0cimi60asz5mmrq2qmnyqq9x5yg14cc67j8135x9zlklblsfyf35"))))
(properties `((upstream-name . "AgiMicroRna"))) (properties `((upstream-name . "AgiMicroRna")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -3300,13 +3300,13 @@ for use in Bioconductors AnnotationHub.")
(define-public r-anvil (define-public r-anvil
(package (package
(name "r-anvil") (name "r-anvil")
(version "1.14.0") (version "1.14.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "AnVIL" version)) (uri (bioconductor-uri "AnVIL" version))
(sha256 (sha256
(base32 (base32
"0syd1m992i2xqw2djw6s07zwwvrzvd0aksix1cbhx9plpswd2245")))) "06n0as71m3dfbnzjfq8f1s0r40w4flc8am7zb0293c1037clmcig"))))
(properties `((upstream-name . "AnVIL"))) (properties `((upstream-name . "AnVIL")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -3862,13 +3862,13 @@ pairs.")
(define-public r-aseb (define-public r-aseb
(package (package
(name "r-aseb") (name "r-aseb")
(version "1.46.0") (version "1.46.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ASEB" version)) (uri (bioconductor-uri "ASEB" version))
(sha256 (sha256
(base32 (base32
"1hiapxdbp1fg6wk62s31nkv9mkxzvd23hn3zhmf9n0nvqfhi7bdf")))) "1da6ld3ij55l3saj05ink8i1f6gqwyrv896qh8g94dmh6vzn2xbr"))))
(properties `((upstream-name . "ASEB"))) (properties `((upstream-name . "ASEB")))
(build-system r-build-system) (build-system r-build-system)
(home-page "https://bioconductor.org/packages/ASEB") (home-page "https://bioconductor.org/packages/ASEB")
@ -4408,13 +4408,13 @@ usage.")
(define-public r-bandits (define-public r-bandits
(package (package
(name "r-bandits") (name "r-bandits")
(version "1.18.0") (version "1.18.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "BANDITS" version)) (uri (bioconductor-uri "BANDITS" version))
(sha256 (sha256
(base32 (base32
"1xdyi61scfay5l5v7c40wjjl83kcvagvypxnfvsws4avh08x3ni3")))) "0y81m37c5irpaw9pfm5b672wk804n4x1g9g5pfh1dp7pggfwbf1z"))))
(properties `((upstream-name . "BANDITS"))) (properties `((upstream-name . "BANDITS")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -4516,14 +4516,14 @@ retrieval analyses, or similar technologies.")
(define-public r-biocversion (define-public r-biocversion
(package (package
(name "r-biocversion") (name "r-biocversion")
(version "3.18.0") (version "3.18.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "BiocVersion" version)) (uri (bioconductor-uri "BiocVersion" version))
(sha256 (sha256
(base32 (base32
"07zcf19gcbki2d18xgyrdzp3vn90cz2ww45p8ra4lc1mif5gy0c3")))) "15wr651ylbx3am213dsy5kdr1xc8r5c9rfq5ydxzqlmxzjgymj55"))))
(properties `((upstream-name . "BiocVersion"))) (properties `((upstream-name . "BiocVersion")))
(build-system r-build-system) (build-system r-build-system)
(home-page "https://bioconductor.org/packages/BiocVersion/") (home-page "https://bioconductor.org/packages/BiocVersion/")
@ -4628,13 +4628,13 @@ stochastic dropout events as well as systematic allelic imbalance is used.")
(define-public r-cellid (define-public r-cellid
(package (package
(name "r-cellid") (name "r-cellid")
(version "1.10.0") (version "1.10.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "CelliD" version)) (uri (bioconductor-uri "CelliD" version))
(sha256 (sha256
(base32 (base32
"1x4kp8i204rqas2bgg4qanwdncafilymlpvxvfyv39zpdji91yv5")))) "13hwxhdp268h3n8d8wgr75i60apa9mama9bg049yz7c6mj5ixd1v"))))
(properties `((upstream-name . "CelliD"))) (properties `((upstream-name . "CelliD")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -5269,13 +5269,13 @@ bases such as COSMIC.")
(define-public r-degreport (define-public r-degreport
(package (package
(name "r-degreport") (name "r-degreport")
(version "1.38.0") (version "1.38.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "DEGreport" version)) (uri (bioconductor-uri "DEGreport" version))
(sha256 (sha256
(base32 (base32
"1ska9fh1bzdqd9pi67vqgx0vz4wz2r5kzmh73fb9zh9m0gnjjr23")) "0s0d40ac1da73w7j96lb20wchgs4c2svfrafsgi9mx5hiswfz25z"))
(snippet (snippet
'(delete-file "docs/jquery.sticky-kit.min.js")))) '(delete-file "docs/jquery.sticky-kit.min.js"))))
(properties `((upstream-name . "DEGreport"))) (properties `((upstream-name . "DEGreport")))
@ -5298,6 +5298,7 @@ bases such as COSMIC.")
r-complexheatmap r-complexheatmap
r-consensusclusterplus r-consensusclusterplus
r-cowplot r-cowplot
r-dendextend
r-deseq2 r-deseq2
r-dplyr r-dplyr
r-edger r-edger
@ -5313,6 +5314,7 @@ bases such as COSMIC.")
r-rlang r-rlang
r-s4vectors r-s4vectors
r-scales r-scales
r-stringi
r-stringr r-stringr
r-summarizedexperiment r-summarizedexperiment
r-tibble r-tibble
@ -5481,19 +5483,18 @@ calculation in parallel.")
(define-public r-dmrcate (define-public r-dmrcate
(package (package
(name "r-dmrcate") (name "r-dmrcate")
(version "2.14.1") (version "2.16.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "DMRcate" version)) (uri (bioconductor-uri "DMRcate" version))
(sha256 (sha256
(base32 (base32
"1va60r297cl6xw5mc4nf9igfizqqzz7i5436x26iw4q35jcwlfjl")))) "19dxpmjjg8v2l71yjjlfj0ycvmhi9rk04q59nwjcp0aw8nvk6l3w"))))
(properties `((upstream-name . "DMRcate"))) (properties `((upstream-name . "DMRcate")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-biomart (list r-biomart
r-bsseq r-bsseq
r-dss
r-edger r-edger
r-experimenthub r-experimenthub
r-genomeinfodb r-genomeinfodb
@ -5700,14 +5701,14 @@ arbitrary genomic intervals along chromosomal ideogram.")
(define-public r-infercnv (define-public r-infercnv
(package (package
(name "r-infercnv") (name "r-infercnv")
(version "1.18.0") (version "1.18.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "infercnv" version)) (uri (bioconductor-uri "infercnv" version))
(sha256 (sha256
(base32 (base32
"1yxg04644yqy3wbqbsf4hcvvimkk8z60xizpy4rc48i3hxjm7nbf")))) "1d9in3hs2n91pv498715d3qi82c7xsnm42vnzgfyz096zjghgp7a"))))
(properties `((upstream-name . "infercnv"))) (properties `((upstream-name . "infercnv")))
(build-system r-build-system) (build-system r-build-system)
(inputs (list python)) (inputs (list python))
@ -6197,14 +6198,14 @@ problems in CEL-level data to help evaluate performance of quality metrics.")
(define-public r-affycoretools (define-public r-affycoretools
(package (package
(name "r-affycoretools") (name "r-affycoretools")
(version "1.72.0") (version "1.74.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "affycoretools" version)) (uri (bioconductor-uri "affycoretools" version))
(sha256 (sha256
(base32 (base32
"1h065fhw0n2ga74csyhqbj4qfhkg058pqa684ixcski4rhsd7hcf")))) "0bgv8a7hf8ns472zfryf255zqdikjv08np6k6hkpvyivad25vpwy"))))
(properties `((upstream-name . "affycoretools"))) (properties `((upstream-name . "affycoretools")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -6215,8 +6216,8 @@ problems in CEL-level data to help evaluate performance of quality metrics.")
r-dbi r-dbi
r-edger r-edger
r-gcrma r-gcrma
r-glimma
r-ggplot2 r-ggplot2
r-glimma
r-gostats r-gostats
r-gplots r-gplots
r-hwriter r-hwriter
@ -6318,13 +6319,13 @@ microarrays.")
(define-public r-annotationdbi (define-public r-annotationdbi
(package (package
(name "r-annotationdbi") (name "r-annotationdbi")
(version "1.64.0") (version "1.64.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "AnnotationDbi" version)) (uri (bioconductor-uri "AnnotationDbi" version))
(sha256 (sha256
(base32 (base32
"0nyw3x5ivq969p2w788zi4pp0pwjv5hhpjpl5lyfzhak9ydylgh6")))) "1bdr303a2z03c8vc8q95a4a4a8i956vimia5yik78yddd1ig9gq3"))))
(properties (properties
`((upstream-name . "AnnotationDbi"))) `((upstream-name . "AnnotationDbi")))
(build-system r-build-system) (build-system r-build-system)
@ -6563,13 +6564,13 @@ powerful online queries from gene annotation to database mining.")
(define-public r-biomartr (define-public r-biomartr
(package (package
(name "r-biomartr") (name "r-biomartr")
(version "1.0.6") (version "1.0.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "biomartr" version)) (uri (cran-uri "biomartr" version))
(sha256 (sha256
(base32 (base32
"06wd8s2cssw58xp9d078fc7iycpxryccnclrk3gnh757j1h0vzim")))) "0ic6qbk2xmgrcc0xhxyhjafp1xbf2c5dpbqqrbkprrhynr8mq7cx"))))
(properties `((upstream-name . "biomartr"))) (properties `((upstream-name . "biomartr")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -6793,13 +6794,13 @@ analysis.")
(define-public r-champ (define-public r-champ
(package (package
(name "r-champ") (name "r-champ")
(version "2.30.0") (version "2.32.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ChAMP" version)) (uri (bioconductor-uri "ChAMP" version))
(sha256 (sha256
(base32 (base32
"1px2pm90lxwh0yn7h1kmmf94flhjs5p4i0iav7ya1xfybyg4w2zc")))) "1gdcdx34bxffd6ch354qx7yjngx3lj9chv5frwjyk56jq12vjjk7"))))
(properties `((upstream-name . "ChAMP"))) (properties `((upstream-name . "ChAMP")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -7323,13 +7324,13 @@ global-scaling and full-quantile normalization.")
(define-public r-edger (define-public r-edger
(package (package
(name "r-edger") (name "r-edger")
(version "4.0.1") (version "4.0.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "edgeR" version)) (uri (bioconductor-uri "edgeR" version))
(sha256 (sha256
(base32 (base32
"0vjydwjazl7br0hvshy7jip3z6w73bif9vaky20im5rv40pqnchh")))) "0sz46pwa1bsqrff2igswfhhj1fcwzn34zrlawy4fnb58z48kccb0"))))
(properties `((upstream-name . "edgeR"))) (properties `((upstream-name . "edgeR")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -7610,13 +7611,13 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.")
(define-public r-genomeinfodb (define-public r-genomeinfodb
(package (package
(name "r-genomeinfodb") (name "r-genomeinfodb")
(version "1.38.0") (version "1.38.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "GenomeInfoDb" version)) (uri (bioconductor-uri "GenomeInfoDb" version))
(sha256 (sha256
(base32 (base32
"1a82xx1ijmfxk6d4pjqy45cdrnf75yrs7l7l64brl5d5dif45s42")))) "07xncxak8yjy04m7zh779jfjbsdmdbk8a5xs4rbajx4zp3hm4wb7"))))
(properties (properties
`((upstream-name . "GenomeInfoDb"))) `((upstream-name . "GenomeInfoDb")))
(build-system r-build-system) (build-system r-build-system)
@ -8288,7 +8289,6 @@ methylation data at the genome scale.")
microarray data, using nearest neighbor averaging.") microarray data, using nearest neighbor averaging.")
(license license:gpl2+))) (license license:gpl2+)))
;; TODO: check javascript
(define-public r-interactivedisplay (define-public r-interactivedisplay
(package (package
(name "r-interactivedisplay") (name "r-interactivedisplay")
@ -8301,40 +8301,50 @@ microarray data, using nearest neighbor averaging.")
"0w81c5kc48gjavln50ysgr3vaf8s4fb6632ckzb1q225j9ik2gia")) "0w81c5kc48gjavln50ysgr3vaf8s4fb6632ckzb1q225j9ik2gia"))
(snippet (snippet
'(for-each delete-file '(for-each delete-file
'("inst/www/js/jquery.js" '("inst/www/js/d3.v2.js"
"inst/www/js/jquery.js"
"inst/www/js/jquery.min.js" "inst/www/js/jquery.min.js"
"inst/www/js/jquery.dataTables.min.js"))))) "inst/www/js/jquery.dataTables.min.js"
"inst/www/js/jquery.dataTables.nightly.js")))))
(properties `((upstream-name . "interactiveDisplay"))) (properties `((upstream-name . "interactiveDisplay")))
(build-system r-build-system) (build-system r-build-system)
(arguments (arguments
(list (list
#:modules '((guix build utils) #:modules
(guix build r-build-system) '((guix build r-build-system)
(srfi srfi-1)) (guix build minify-build-system)
(guix build utils)
(ice-9 match))
#:imported-modules
`(,@%r-build-system-modules
(guix build minify-build-system))
#:phases #:phases
'(modify-phases %standard-phases #~(modify-phases (@ (guix build r-build-system) %standard-phases)
(add-after 'unpack 'process-javascript (add-after 'unpack 'process-javascript
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(call-with-values (with-directory-excursion "inst/"
(lambda () (for-each (match-lambda
(unzip2 ((source . target)
`((,(assoc-ref inputs "js-jquery-1.8.2") (minify source #:target target)))
"inst/www/js/jquery.js") `((,(assoc-ref inputs "js-jquery-1.8.2")
(,(assoc-ref inputs "js-jquery-1.9.1") . "www/js/jquery.js")
"inst/www/js/jquery.min.js") (,(assoc-ref inputs "js-jquery-1.9.1")
(,(search-input-file inputs . "www/js/jquery.min.js")
"/share/javascript/jquery.dataTables.min.js") (,(search-input-file inputs
"inst/www/js/jquery.dataTables.min.js")))) "/share/javascript/jquery.dataTables.min.js")
(lambda (sources targets) . "www/js/jquery.dataTables.min.js")
(for-each (lambda (source target) (,(string-append (assoc-ref inputs "js-datatables-1.9")
(format #true "Processing ~a --> ~a~%" "/share/javascript/jquery.dataTables.min.js")
source target) . "www/js/jquery.dataTables.min.js")
(invoke "esbuild" source "--minify" (,(string-append (assoc-ref inputs "js-datatables-1.10")
(string-append "--outfile=" target))) "/share/javascript/jquery.dataTables.min.js")
sources targets)))))))) . "www/js/jquery.dataTables.nightly.js")
(,(assoc-ref inputs "js-d3-v2")
. "www/js/d3.v2.js")))))))))
(propagated-inputs (propagated-inputs
(list r-annotationdbi (list r-annotationdbi
r-biocgenerics r-biocgenerics
r-biocmanager ;this is not listed in DESCRIPTION
r-category r-category
r-ggplot2 r-ggplot2
r-gridsvg r-gridsvg
@ -8347,7 +8357,15 @@ microarray data, using nearest neighbor averaging.")
(native-inputs (native-inputs
`(("esbuild" ,esbuild) `(("esbuild" ,esbuild)
("r-knitr" ,r-knitr) ("r-knitr" ,r-knitr)
("js-datatables" ,js-datatables) ("js-d3-v2"
,(origin
(method url-fetch)
(uri "https://web.archive.org/web/20230428092426id_/https://d3js.org/d3.v2.js")
(sha256
(base32
"1m57mxhcynfaz6gz3v0aph5i6hx5jf455jdygyl8yzs9r2dpp5vr"))))
("js-datatables-1.9" ,js-datatables-1.9)
("js-datatables-1.10" ,js-datatables)
("js-jquery-1.8.2" ("js-jquery-1.8.2"
,(origin ,(origin
(method url-fetch) (method url-fetch)
@ -9102,14 +9120,14 @@ package TeXshade.")
(define-public r-msnbase (define-public r-msnbase
(package (package
(name "r-msnbase") (name "r-msnbase")
(version "2.28.0") (version "2.28.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "MSnbase" version)) (uri (bioconductor-uri "MSnbase" version))
(sha256 (sha256
(base32 (base32
"0dway94j3k2dq5p8lqzj49ql85xrxxxgmlgppqg0h8k56xqrmf5i")))) "1622mmm5n8yl4qjq8bda7689qdfz1rhyxyh8s3q5475al1d0mpsl"))))
(properties `((upstream-name . "MSnbase"))) (properties `((upstream-name . "MSnbase")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -9592,6 +9610,34 @@ package contains functions for combining the results of multiple runs of gene
set analyses.") set analyses.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public r-polyester
(package
(name "r-polyester")
(version "1.38.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "polyester" version))
(sha256
(base32 "1iycdxj0jhh2faclfzflp2cjc2zmxmhy03avv75h0qg3j5kf35l4"))))
(properties `((upstream-name . "polyester")))
(build-system r-build-system)
(propagated-inputs
(list r-biostrings
r-iranges
r-limma
r-logspline
r-s4vectors
r-zlibbioc))
(native-inputs (list r-knitr))
(home-page "https://bioconductor.org/packages/polyester")
(synopsis "Simulate RNA-seq reads")
(description
"The polyester package simulates RNA-seq reads from differential expression
experiments with replicates. The reads can then be aligned and used to perform
comparisons of methods for differential expression.")
(license license:artistic2.0)))
(define-public r-powertcr (define-public r-powertcr
(package (package
(name "r-powertcr") (name "r-powertcr")
@ -9792,18 +9838,16 @@ region sets and other genomic features.")
(define-public r-reportingtools (define-public r-reportingtools
(package (package
(name "r-reportingtools") (name "r-reportingtools")
(version "2.39.0") (version "2.42.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ReportingTools" version)) (uri (bioconductor-uri "ReportingTools" version))
(sha256 (sha256
(base32 (base32
"15h7vqdxfv7y0f82ff7a8brqnscs324x22izlkgjk2wqahnmr2l1")) "109vmrdsjdjnfrlcdyadzbwz9a50hqaahf7dawwxkbbh4mmdih78"))
(snippet (snippet
'(for-each delete-file '(delete-file "inst/extdata/jslib/jquery-1.8.0.min.js"))))
(list "inst/doc/jslib/jquery-1.8.0.min.js"
"inst/extdata/jslib/jquery-1.8.0.min.js")))))
(properties (properties
`((upstream-name . "ReportingTools"))) `((upstream-name . "ReportingTools")))
(build-system r-build-system) (build-system r-build-system)
@ -9811,25 +9855,20 @@ region sets and other genomic features.")
(list (list
#:modules '((guix build utils) #:modules '((guix build utils)
(guix build r-build-system) (guix build r-build-system)
(srfi srfi-1)) (guix build minify-build-system)
(ice-9 match))
#:imported-modules
`(,@%r-build-system-modules
(guix build minify-build-system))
#:phases #:phases
'(modify-phases %standard-phases '(modify-phases (@ (guix build r-build-system) %standard-phases)
(add-after 'unpack 'process-javascript (add-after 'unpack 'process-javascript
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(call-with-values (for-each (match-lambda
(lambda () ((source . target)
(unzip2 (minify source #:target target)))
`((,(assoc-ref inputs "_") `((,(assoc-ref inputs "_")
"inst/doc/jslib/jquery-1.8.0.min.js")))) . "inst/extdata/jslib/jquery-1.8.0.min.js"))))))))
(lambda (sources targets)
(for-each (lambda (source target)
(format #true "Processing ~a --> ~a~%"
source target)
(invoke "esbuild" source "--minify"
(string-append "--outfile=" target)))
sources targets)))
(copy-file "inst/doc/jslib/jquery-1.8.0.min.js"
"inst/extdata/jslib/jquery-1.8.0.min.js"))))))
(propagated-inputs (propagated-inputs
(list r-annotate (list r-annotate
r-annotationdbi r-annotationdbi
@ -9851,7 +9890,7 @@ region sets and other genomic features.")
r-r-utils r-r-utils
r-xml)) r-xml))
(native-inputs (native-inputs
(list esbuild r-knitr (list esbuild r-rmarkdown
(origin (origin
(method url-fetch) (method url-fetch)
(uri "https://code.jquery.com/jquery-1.8.0.js") (uri "https://code.jquery.com/jquery-1.8.0.js")
@ -9875,13 +9914,13 @@ browser.")
(define-public r-rhdf5 (define-public r-rhdf5
(package (package
(name "r-rhdf5") (name "r-rhdf5")
(version "2.46.0") (version "2.46.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "rhdf5" version)) (uri (bioconductor-uri "rhdf5" version))
(sha256 (sha256
(base32 (base32
"1csf5nrg2nkdwh8cz26idz6wrhj7bgnfh559mzlpdj4licnf1ymc")))) "0yfy0y9ywzbbdmvvraxmizv3w2x1iznhfys6hhwyi644pxh4k3xn"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-rhdf5filters r-rhdf5lib r-s4vectors)) (list r-rhdf5filters r-rhdf5lib r-s4vectors))
@ -9902,14 +9941,14 @@ the available RAM.")
(define-public r-rhdf5filters (define-public r-rhdf5filters
(package (package
(name "r-rhdf5filters") (name "r-rhdf5filters")
(version "1.14.0") (version "1.14.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "rhdf5filters" version)) (uri (bioconductor-uri "rhdf5filters" version))
(sha256 (sha256
(base32 (base32
"1appjnggyljrn77nvv9adkwxplbrrlgkrrd1bf2b5r0nsa505hdc")))) "0cqf7k19k4m4swd2c1wd9cyzw9k90s3d3jq0hijjwvza50nn2dk6"))))
(properties `((upstream-name . "rhdf5filters"))) (properties `((upstream-name . "rhdf5filters")))
(build-system r-build-system) (build-system r-build-system)
(arguments (arguments
@ -10699,13 +10738,13 @@ level.")
(define-public r-tcgautils (define-public r-tcgautils
(package (package
(name "r-tcgautils") (name "r-tcgautils")
(version "1.22.0") (version "1.22.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "TCGAutils" version)) (uri (bioconductor-uri "TCGAutils" version))
(sha256 (sha256
(base32 (base32
"0r79iiqv7q83wz5w3lm271dn3jdrkggmvjdyj1wnjsih1n2viy7d")))) "16pcz52ynx0syb5bcnkywllqxcfp7jipqgzgjr7q70k1z13ah7a3"))))
(properties `((upstream-name . "TCGAutils"))) (properties `((upstream-name . "TCGAutils")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-annotationdbi (propagated-inputs (list r-annotationdbi
@ -10758,13 +10797,13 @@ identifier translation via the GDC API.")
(define-public r-trackviewer (define-public r-trackviewer
(package (package
(name "r-trackviewer") (name "r-trackviewer")
(version "1.38.0") (version "1.38.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "trackViewer" version)) (uri (bioconductor-uri "trackViewer" version))
(sha256 (sha256
(base32 (base32
"15agkyqx6gl5zzdxra5nl0czd4j7mw456r587w039l9hzwznwbr8")) "008d1wg8882iq7jfmwijpchxrfva5ysl45ama62iy8s9dm0fpwsj"))
(snippet (snippet
'(delete-file "inst/htmlwidgets/lib/d3/d3.v4.min.js")))) '(delete-file "inst/htmlwidgets/lib/d3/d3.v4.min.js"))))
(properties `((upstream-name . "trackViewer"))) (properties `((upstream-name . "trackViewer")))
@ -11354,13 +11393,13 @@ R, enabling interactive analysis and visualization of genome-scale data.")
(define-public r-variantannotation (define-public r-variantannotation
(package (package
(name "r-variantannotation") (name "r-variantannotation")
(version "1.48.0") (version "1.48.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "VariantAnnotation" version)) (uri (bioconductor-uri "VariantAnnotation" version))
(sha256 (sha256
(base32 (base32
"1r1cyimr5l5jzgxvmrm3vq8mvz3f1klfdwy9mz31xvnvgjacr58p")))) "0l9xkrvsrc3m65kdjcyir6jkpa718g7idziwr0pp5yaj84bd3xia"))))
(properties (properties
`((upstream-name . "VariantAnnotation"))) `((upstream-name . "VariantAnnotation")))
(build-system r-build-system) (build-system r-build-system)
@ -11578,13 +11617,13 @@ libraries for systems that do not have these available via other means.")
(define-public r-zellkonverter (define-public r-zellkonverter
(package (package
(name "r-zellkonverter") (name "r-zellkonverter")
(version "1.12.0") (version "1.12.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "zellkonverter" version)) (uri (bioconductor-uri "zellkonverter" version))
(sha256 (sha256
(base32 "02q9icblcnh0l7vah29mnhcczw8w0gpgd57v19gy7222nrqpcd9m")))) (base32 "029bqn25c90algvgacxbv0fdznpg879xjwfj5hiydfwq30y0kr8r"))))
(properties `((upstream-name . "zellkonverter"))) (properties `((upstream-name . "zellkonverter")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -14561,13 +14600,13 @@ and Infinium HD arrays are also included.")
(define-public r-lefser (define-public r-lefser
(package (package
(name "r-lefser") (name "r-lefser")
(version "1.11.5") (version "1.12.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "lefser" version)) (uri (bioconductor-uri "lefser" version))
(sha256 (sha256
(base32 (base32
"1fnccnjllgxf51dlmcvv0r66xs0wvfxrj66qrqisqd99hrpxhws2")))) "0aywwinp4wwwa12rq60gpfk5gn28zyimayxakgj4lhfwjk0byz8m"))))
(properties `((upstream-name . "lefser"))) (properties `((upstream-name . "lefser")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -15074,14 +15113,14 @@ to multiple hypothesis correction.")
(define-public r-dose (define-public r-dose
(package (package
(name "r-dose") (name "r-dose")
(version "3.28.0") (version "3.28.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "DOSE" version)) (uri (bioconductor-uri "DOSE" version))
(sha256 (sha256
(base32 (base32
"1xirazskw2d0fllyf27jvsm69amcil1znx81m9d613vl03dpwswy")))) "0kk4l8cxyvcq4cjjnb59zajf4ci0igml13582qqn8123cqkbf8pf"))))
(properties `((upstream-name . "DOSE"))) (properties `((upstream-name . "DOSE")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -15091,10 +15130,9 @@ to multiple hypothesis correction.")
r-ggplot2 r-ggplot2
r-gosemsim r-gosemsim
r-hdo-db r-hdo-db
r-hpo-db
r-mpo-db
r-qvalue r-qvalue
r-reshape2)) r-reshape2
r-yulab-utils))
(native-inputs (native-inputs
(list r-knitr)) (list r-knitr))
(home-page "https://guangchuangyu.github.io/software/DOSE/") (home-page "https://guangchuangyu.github.io/software/DOSE/")
@ -15783,14 +15821,14 @@ type and symbol colors.")
(define-public r-genomicscores (define-public r-genomicscores
(package (package
(name "r-genomicscores") (name "r-genomicscores")
(version "2.14.1") (version "2.14.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "GenomicScores" version)) (uri (bioconductor-uri "GenomicScores" version))
(sha256 (sha256
(base32 (base32
"1plpmi1sb9vv03480njf3awnc7i19f9iaxi3j6bvjzpi6zmw40dq")))) "1wjq6lb2x7vazlr838hlh1ar5pis2bgzya9lm8ki30d1m0hpk66k"))))
(properties `((upstream-name . "GenomicScores"))) (properties `((upstream-name . "GenomicScores")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -16512,14 +16550,14 @@ based on @dfn{Continuous Wavelet Transform} (CWT).")
(define-public r-xcms (define-public r-xcms
(package (package
(name "r-xcms") (name "r-xcms")
(version "4.0.0") (version "4.0.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "xcms" version)) (uri (bioconductor-uri "xcms" version))
(sha256 (sha256
(base32 (base32
"10bvxww489mb4bl5v9ma6klyg359zb9ady5rl95q1mkp54hahdw8")))) "061ihzj8pn2g393q1gdq2jssanxm9gh5qm37fz4gna2hbd6bf79p"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-biobase (list r-biobase
@ -17719,14 +17757,14 @@ for other R packages to compile and link against.")
(define-public r-flowworkspace (define-public r-flowworkspace
(package (package
(name "r-flowworkspace") (name "r-flowworkspace")
(version "4.14.0") (version "4.14.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "flowWorkspace" version)) (uri (bioconductor-uri "flowWorkspace" version))
(sha256 (sha256
(base32 (base32
"09cpbf33b3x9b06yf41qy2fy8zviwrznrpkb9fq3an8vg8gf51lp")))) "0sbixbq99kmhh0ppdid1hqhb75yxb6gsm5pdz75y67i3pgwrv1sj"))))
(properties `((upstream-name . "flowWorkspace"))) (properties `((upstream-name . "flowWorkspace")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -18700,14 +18738,14 @@ populations, splice site strength, conservation, etc.")
(define-public r-variancepartition (define-public r-variancepartition
(package (package
(name "r-variancepartition") (name "r-variancepartition")
(version "1.32.1") (version "1.32.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "variancePartition" version)) (uri (bioconductor-uri "variancePartition" version))
(sha256 (sha256
(base32 (base32
"1pr321hv5q2sl8lc998hkwdl2mfyzcgf2l70ny2m3hfmlclq5lnn")))) "0cmcg39a5939y517vhvwanqh1fwzyx6pbq47nc5cpswf7pn9cv5x"))))
(properties (properties
`((upstream-name . "variancePartition"))) `((upstream-name . "variancePartition")))
(build-system r-build-system) (build-system r-build-system)
@ -18725,6 +18763,7 @@ populations, splice site strength, conservation, etc.")
r-lmertest r-lmertest
r-mass r-mass
r-matrix r-matrix
r-matrixstats
r-pbkrtest r-pbkrtest
r-rdpack r-rdpack
r-remacor r-remacor
@ -18778,13 +18817,13 @@ features (e.g. genes, microRNAs).")
(define-public r-ucell (define-public r-ucell
(package (package
(name "r-ucell") (name "r-ucell")
(version "2.6.1") (version "2.6.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "UCell" version)) (uri (bioconductor-uri "UCell" version))
(sha256 (sha256
(base32 (base32
"1ds11f1q6v89sfcj1sinrkv7aw3s0prf5nxf7pz4hdsvqn4zp467")))) "00v4b91f7y3zyndbl4wlfay8wljnqypfc05vrw15yr62d9smd35d"))))
(properties `((upstream-name . "UCell"))) (properties `((upstream-name . "UCell")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-biocneighbors (propagated-inputs (list r-biocneighbors
@ -20367,14 +20406,14 @@ plot them, and perform logrank or Wilcoxon type tests.")
(define-public r-fhtest (define-public r-fhtest
(package (package
(name "r-fhtest") (name "r-fhtest")
(version "1.5") (version "1.5.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "FHtest" version)) (uri (cran-uri "FHtest" version))
(sha256 (sha256
(base32 (base32
"00mql2r4f5hxhdqf27q3x9s5rz2zzakx2myym97b1w1s7c5znl4q")))) "0x7lr88w0b09ng7nps490kgj8aqdjzmp9skv9iwqgn871pnpydms"))))
(properties `((upstream-name . "FHtest"))) (properties `((upstream-name . "FHtest")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -20499,13 +20538,13 @@ array-like semantic. It also provides:
(define-public r-s4vectors (define-public r-s4vectors
(package (package
(name "r-s4vectors") (name "r-s4vectors")
(version "0.40.1") (version "0.40.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "S4Vectors" version)) (uri (bioconductor-uri "S4Vectors" version))
(sha256 (sha256
(base32 (base32
"0pja00ssl1pd16v3bls3aybml2cwanylx8igf596zha5srcf5l5h")))) "10lryil0psfyal0006rbhj0dbxyn8f7mpp11h758zc217cxsdnac"))))
(properties (properties
`((upstream-name . "S4Vectors"))) `((upstream-name . "S4Vectors")))
(build-system r-build-system) (build-system r-build-system)
@ -20529,14 +20568,14 @@ S4Vectors package itself.")
(define-public r-wgcna (define-public r-wgcna
(package (package
(name "r-wgcna") (name "r-wgcna")
(version "1.72-1") (version "1.72-5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "WGCNA" version)) (uri (cran-uri "WGCNA" version))
(sha256 (sha256
(base32 (base32
"1p3zsl5r6l5r6ylnrxmbxjpim5qgmncgdjcgn5j69rzk3rv85gqx")))) "17g7lan1rpy6y4nmqksrf9ddp3gs58vdczfavgq1fp13zx1r2hq3"))))
(properties `((upstream-name . "WGCNA"))) (properties `((upstream-name . "WGCNA")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -20548,10 +20587,10 @@ S4Vectors package itself.")
r-go-db r-go-db
r-hmisc r-hmisc
r-impute r-impute
r-rcpp
r-survival
r-matrixstats r-matrixstats
r-preprocesscore)) r-preprocesscore
r-rcpp
r-survival))
(home-page (home-page
"http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/") "http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/")
(synopsis "Weighted correlation network analysis") (synopsis "Weighted correlation network analysis")
@ -20726,14 +20765,14 @@ block processing.")
(define-public r-rhdf5lib (define-public r-rhdf5lib
(package (package
(name "r-rhdf5lib") (name "r-rhdf5lib")
(version "1.24.0") (version "1.24.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "Rhdf5lib" version)) (uri (bioconductor-uri "Rhdf5lib" version))
(sha256 (sha256
(base32 (base32
"10n2grfdnri686sx52shz7y0csmcz4cky23k07803dz6qm1ljvmf")) "0lb5dkzfnfvxwrk8s9vzfjp8ab1sbr7b22jnzg41hgmpysi7dswh"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -20794,10 +20833,11 @@ block processing.")
(("cp \"\\$\\{SZIP_LIB\\}.*") "") (("cp \"\\$\\{SZIP_LIB\\}.*") "")
(("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n")))))))) (("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n"))))))))
(propagated-inputs (propagated-inputs
(list hdf5-1.10 zlib)) (list hdf5-1.10 r-biocstyle r-stringr zlib))
(native-inputs (native-inputs
`(("hdf5-source" ,(package-source hdf5-1.10)) `(("hdf5-source" ,(package-source hdf5-1.10))
("r-knitr" ,r-knitr))) ("r-knitr" ,r-knitr)
("r-rmarkdown" ,r-rmarkdown)))
(home-page "https://bioconductor.org/packages/Rhdf5lib") (home-page "https://bioconductor.org/packages/Rhdf5lib")
(synopsis "HDF5 library as an R package") (synopsis "HDF5 library as an R package")
(description "This package provides C and C++ HDF5 libraries for use in R (description "This package provides C and C++ HDF5 libraries for use in R
@ -21205,13 +21245,13 @@ of other packages.")
(define-public r-scater (define-public r-scater
(package (package
(name "r-scater") (name "r-scater")
(version "1.30.0") (version "1.30.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "scater" version)) (uri (bioconductor-uri "scater" version))
(sha256 (sha256
(base32 (base32
"0a8wfrcp09z0aflalqhhwvz675aa32wgprqphk1axvdppknsg7vf")))) "06a4nxxsgmi435m06ir401w4fbrh0xdgh6mkv3i7vw001yrbrfcx"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-beachmat (list r-beachmat
@ -21292,13 +21332,13 @@ variable and significantly correlated genes.")
(define-public r-sparsearray (define-public r-sparsearray
(package (package
(name "r-sparsearray") (name "r-sparsearray")
(version "1.2.0") (version "1.2.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "SparseArray" version)) (uri (bioconductor-uri "SparseArray" version))
(sha256 (sha256
(base32 "0a1xg8vkjybgdr09bk2z4i82m06qnw2nhbzviyijadxiwvz6pgsz")))) (base32 "1kjs3v2ycpcc0plr88af1661ngmclmalkiy6am7i4m75cpa3889p"))))
(properties `((upstream-name . "SparseArray"))) (properties `((upstream-name . "SparseArray")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-biocgenerics (propagated-inputs (list r-biocgenerics
@ -21420,14 +21460,14 @@ memory usage and processing time is minimized.")
(define-public r-mscoreutils (define-public r-mscoreutils
(package (package
(name "r-mscoreutils") (name "r-mscoreutils")
(version "1.14.0") (version "1.14.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "MsCoreUtils" version)) (uri (bioconductor-uri "MsCoreUtils" version))
(sha256 (sha256
(base32 (base32
"0faj4fxfsv7ir935sn9zainhk55vdfi6abgr0s321kwmvs6prc0p")))) "0l6rdkpg89pds3n5y4khvaifgbvm38n0vlpi15h97rnk8x461rsz"))))
(properties `((upstream-name . "MsCoreUtils"))) (properties `((upstream-name . "MsCoreUtils")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -21834,14 +21874,14 @@ family of feature/genome hypotheses.")
(define-public r-gviz (define-public r-gviz
(package (package
(name "r-gviz") (name "r-gviz")
(version "1.46.0") (version "1.46.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "Gviz" version)) (uri (bioconductor-uri "Gviz" version))
(sha256 (sha256
(base32 (base32
"0b707xxi0ch4kfxid5id16gkh9pnqwrgqpsvgbm0rc89kg73g4jz")))) "0an8hd2g2hp3p1vfsmxq77fm71xlf5g73j4w5mcy28x1aj073zxf"))))
(properties `((upstream-name . "Gviz"))) (properties `((upstream-name . "Gviz")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -22029,14 +22069,14 @@ on the plot.")
(define-public r-abn (define-public r-abn
(package (package
(name "r-abn") (name "r-abn")
(version "3.0.3") (version "3.0.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "abn" version)) (uri (cran-uri "abn" version))
(sha256 (sha256
(base32 (base32
"1yh9nhfphalxh77132r0fkpp71mqsfhb8jk11is4d5nvlvr5316z")))) "1qqsm6ldbf6rnzvspcnv87l4mkxccg4divzf6nj7j92jnhyadqia"))))
(build-system r-build-system) (build-system r-build-system)
(inputs (inputs
(list gsl)) (list gsl))
@ -22710,14 +22750,14 @@ input.")
(define-public r-basilisk-utils (define-public r-basilisk-utils
(package (package
(name "r-basilisk-utils") (name "r-basilisk-utils")
(version "1.14.0") (version "1.14.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "basilisk.utils" version)) (uri (bioconductor-uri "basilisk.utils" version))
(sha256 (sha256
(base32 (base32
"08wsn2znw56svyv5vpxxzcynz93h5hzw1n2r6hb9h3rvc7afyvxl")))) "19m4h90rkk6mizllkih2xmxag8nb45qss3vydkkyj62s5zjhfh27"))))
(properties (properties
`((upstream-name . "basilisk.utils"))) `((upstream-name . "basilisk.utils")))
(build-system r-build-system) (build-system r-build-system)
@ -22734,14 +22774,14 @@ package, primarily for creation of the underlying Conda instance.")
(define-public r-basilisk (define-public r-basilisk
(package (package
(name "r-basilisk") (name "r-basilisk")
(version "1.14.0") (version "1.14.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "basilisk" version)) (uri (bioconductor-uri "basilisk" version))
(sha256 (sha256
(base32 (base32
"1z482gw04psvkgspclmxlkd9qi7srgbnr56ajngcng28sc6zqdhs")))) "1v67z53y2nnss6l6nk7f557kn0d5syg9n0zdgddpsz26rwdmp8ai"))))
(properties `((upstream-name . "basilisk"))) (properties `((upstream-name . "basilisk")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -23101,14 +23141,14 @@ design.")
(define-public r-biomvrcns (define-public r-biomvrcns
(package (package
(name "r-biomvrcns") (name "r-biomvrcns")
(version "1.38.0") (version "1.42.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "biomvRCNS" version)) (uri (bioconductor-uri "biomvRCNS" version))
(sha256 (sha256
(base32 (base32
"0n026b744ah5kcnipsyiqqs7vlz5n5im1kgv35i2pgxyzvf7a8sn")))) "1imni8lpjzf53w2q34ql0j9rwq6drbzxvs0nhzf6s172iqym2hq3"))))
(properties `((upstream-name . "biomvRCNS"))) (properties `((upstream-name . "biomvRCNS")))
(build-system r-build-system) (build-system r-build-system)
(arguments (arguments
@ -23724,14 +23764,14 @@ embeddings and functions to build new reference.")
(define-public r-tximeta (define-public r-tximeta
(package (package
(name "r-tximeta") (name "r-tximeta")
(version "1.20.0") (version "1.20.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "tximeta" version)) (uri (bioconductor-uri "tximeta" version))
(sha256 (sha256
(base32 (base32
"0wn7r1dzckiq3zacvcv2w780fj9bvz1vbyzcazv2qvsicbwc4vd8")))) "00wygiv6k75bx5qs27qlq9l6ajv9gl2bbyqi2gv6jaaaj167q4sd"))))
(properties `((upstream-name . "tximeta"))) (properties `((upstream-name . "tximeta")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs

View file

@ -1070,11 +1070,11 @@ similar.")
(license license:gpl2+)))) (license license:gpl2+))))
(define-public r-stringendo (define-public r-stringendo
(let ((commit "83b8f2d82a09b33b9e895438bb523a021138be01") (let ((commit "15594b1bba11048a812874bafec0eea1dcc8618a")
(revision "1")) (revision "1"))
(package (package
(name "r-stringendo") (name "r-stringendo")
(version (git-version "0.3.4" revision commit)) (version (git-version "0.6.0" revision commit))
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1083,10 +1083,10 @@ similar.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1ap0nhbyd6xx0yl2vgmwk38p22yrkv4k9hw13r35z4wf343rry6v")))) "15ij4zf2j9c8m9n4bqhmxkchjh2bhddwjfxngfpwv7c5wjqyi6ir"))))
(properties `((upstream-name . "Stringendo"))) (properties `((upstream-name . "Stringendo")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-devtools r-usethis)) (propagated-inputs (list r-clipr))
(home-page "https://github.com/vertesy/Stringendo") (home-page "https://github.com/vertesy/Stringendo")
(synopsis "Stringendo is a string parsing library") (synopsis "Stringendo is a string parsing library")
(description (description
@ -1095,11 +1095,11 @@ plotnames, filenames and paths.")
(license license:gpl3)))) (license license:gpl3))))
(define-public r-readwriter (define-public r-readwriter
(let ((commit "12d32cb6533ef4b9eab4d707d1502525c2034aee") (let ((commit "91373c44641014a1ce8e1c3e928747608aae8f54")
(revision "1")) (revision "1"))
(package (package
(name "r-readwriter") (name "r-readwriter")
(version (git-version "0.3.2" revision commit)) (version (git-version "1.5.3" revision commit))
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1108,11 +1108,11 @@ plotnames, filenames and paths.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1hy47g8d7zppr2i9zlkwl2yb0ii8x710hqk07h089ldx9171qxab")))) "156kvmplrip0w1zhs9yl5r0ayjipa0blhy614l65hbsjn1lwbskr"))))
(properties `((upstream-name . "ReadWriter"))) (properties `((upstream-name . "ReadWriter")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-gdata r-gtools r-openxlsx r-readr r-stringendo)) (list r-gtools r-openxlsx r-readr r-stringendo))
(home-page "https://github.com/vertesy/ReadWriter") (home-page "https://github.com/vertesy/ReadWriter")
(synopsis "Functions to read and write files conveniently") (synopsis "Functions to read and write files conveniently")
(description (description
@ -15349,7 +15349,9 @@ activity prediction from transcriptomics data, and its R implementation
(add-after 'unpack 'set-HOME (add-after 'unpack 'set-HOME
(lambda _ (setenv "HOME" "/tmp")))))) (lambda _ (setenv "HOME" "/tmp"))))))
(propagated-inputs (propagated-inputs
(list r-complexheatmap (list r-basilisk
r-basilisk-utils
r-complexheatmap
r-dplyr r-dplyr
r-ggplot2 r-ggplot2
r-magrittr r-magrittr
@ -17988,7 +17990,7 @@ updated much more frequently.")
(define-public python-ctxcore (define-public python-ctxcore
(package (package
(name "python-ctxcore") (name "python-ctxcore")
(version "0.1.1") (version "0.2.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -17998,8 +18000,8 @@ updated much more frequently.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"16nlj7z8pirgjad7vlgm7226b3hpw4a7n967vyfg26dsf5n8k70d")))) "0nv4lc46cnzpg5gcdxrsv7b4srmkq55zl3rcadw5pn3yyz5fzd2k"))))
(build-system python-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list (list
#:phases #:phases
@ -18011,12 +18013,12 @@ updated much more frequently.")
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)))))) (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))))))
(propagated-inputs (propagated-inputs
(list python-cytoolz (list python-cytoolz
python-numba
python-frozendict python-frozendict
python-numba
python-numpy python-numpy
python-pandas python-pandas
python-pyarrow
python-pyyaml python-pyyaml
python-pyarrow-0.16
python-tqdm)) python-tqdm))
(native-inputs (native-inputs
(list python-pytest (list python-pytest
@ -18064,67 +18066,77 @@ tree-based ensemble regressors.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public pyscenic (define-public pyscenic
(package ;; Latest commit from the update-pyarrow branch
(name "pyscenic") (let ((commit "5f170fdf474548c37ab381d1849c662820d658ee")
(version "0.11.2") (revision "1"))
(source (package
(origin (name "pyscenic")
(method git-fetch) (version (git-version "0.11.2" revision commit))
(uri (git-reference (source
(url "https://github.com/aertslab/pySCENIC") (origin
(commit version))) (method git-fetch)
(file-name (git-file-name name version)) (uri (git-reference
(sha256 (url "https://github.com/aertslab/pySCENIC")
(base32 (commit commit)))
"0pbmmr1zdb1vbbs6wx357s59d13pna6x03wq8blj6ckjws8bbq73")))) (file-name (git-file-name name version))
(build-system python-build-system) (sha256
(arguments (base32
`(#:phases "03qkvy400rjndg2ds6bhcaprir71mqr2v3yv9vd77lcnzxgw3s0z"))))
(modify-phases %standard-phases (build-system pyproject-build-system)
;; Numba needs a writable dir to cache functions. (arguments
(add-before 'check 'set-numba-cache-dir (list
(lambda _ #:phases
(setenv "NUMBA_CACHE_DIR" "/tmp"))) '(modify-phases %standard-phases
(replace 'check ;; The cli modules referenced here have been removed, so this
(lambda _ ;; breaks the sanity check.
(invoke "pytest" "-v")))))) (add-after 'unpack 'do-not-reference-deleted-modules
(propagated-inputs (lambda _
(list python-ctxcore (substitute* "setup.py"
python-cytoolz (("'db2feather = .*',") "")
python-multiprocessing-on-dill (("'invertdb = .*',") "")
python-llvmlite (("'gmt2regions = pyscenic.cli.gmt2regions:main'") ""))))
python-numba ;; Numba needs a writable dir to cache functions.
python-attrs (add-before 'check 'set-numba-cache-dir
python-frozendict (lambda _
python-numpy (setenv "NUMBA_CACHE_DIR" "/tmp"))))))
python-pandas (propagated-inputs
python-cloudpickle (list python-ctxcore
python-dask python-cytoolz
python-distributed python-multiprocessing-on-dill
python-arboreto python-llvmlite
python-boltons python-numba
python-setuptools python-attrs
python-pyyaml python-frozendict
python-tqdm python-numpy
python-interlap python-pandas
python-umap-learn python-cloudpickle
python-loompy python-dask
python-networkx python-pyarrow ;XXX for dask
python-scipy python-distributed
python-fsspec python-arboreto
python-requests python-boltons
python-aiohttp python-setuptools
python-scikit-learn)) python-pyyaml
(native-inputs python-tqdm
(list python-pytest)) python-interlap
(home-page "https://scenic.aertslab.org/") python-umap-learn
(synopsis "Single-Cell regulatory network inference and clustering") python-loompy
(description python-networkx
"pySCENIC is a Python implementation of the SCENIC pipeline (Single-Cell python-scipy
python-fsspec
python-requests
python-aiohttp
python-scikit-learn))
(native-inputs
(list python-pytest))
(home-page "https://scenic.aertslab.org/")
(synopsis "Single-Cell regulatory network inference and clustering")
(description
"pySCENIC is a Python implementation of the SCENIC pipeline (Single-Cell
rEgulatory Network Inference and Clustering) which enables biologists to infer rEgulatory Network Inference and Clustering) which enables biologists to infer
transcription factors, gene regulatory networks and cell types from transcription factors, gene regulatory networks and cell types from
single-cell RNA-seq data.") single-cell RNA-seq data.")
(license license:gpl3+))) (license license:gpl3+))))
(define-public python-ikarus (define-public python-ikarus
(package (package

View file

@ -46,11 +46,13 @@
#:use-module ((guix licenses) #:prefix l:) #:use-module ((guix licenses) #:prefix l:)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages adns) #:use-module (gnu packages adns)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages certs)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages cmake) #:use-module (gnu packages cmake)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
@ -78,6 +80,7 @@
#:use-module (gnu packages sqlite) #:use-module (gnu packages sqlite)
#:use-module (gnu packages ssh) #:use-module (gnu packages ssh)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web) #:use-module (gnu packages web)
#:use-module (gnu packages xml)) #:use-module (gnu packages xml))
@ -414,10 +417,16 @@ and will take advantage of multiple processor cores where possible.")
(license (list l:public-domain ; sha1.*, used to build without OpenSSL (license (list l:public-domain ; sha1.*, used to build without OpenSSL
l:gpl2+)))) ; with permission to link with OpenSSL l:gpl2+)))) ; with permission to link with OpenSSL
(define %v2_empty_file.torrent
(origin (method url-fetch)
(uri "https://github.com/arvidn/libtorrent/raw/v2.0.9/test/test_torrents/v2_empty_file.torrent")
(sha256
(base32 "1hydgf0m9193hy9010wl0wrbz4k4cgrqg70jakx68pgi79jcqnrn"))))
(define-public libtorrent-rasterbar (define-public libtorrent-rasterbar
(package (package
(name "libtorrent-rasterbar") (name "libtorrent-rasterbar")
(version "1.2.18") (version "2.0.9")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -426,41 +435,74 @@ and will take advantage of multiple processor cores where possible.")
"releases/download/v" version "/" "releases/download/v" version "/"
"libtorrent-rasterbar-" version ".tar.gz")) "libtorrent-rasterbar-" version ".tar.gz"))
(sha256 (sha256
(base32 "0wpsaqadcicxl4lf1nc1i93c4yzjv8hpzhhrw1hdkrp4gn0vdwpy")))) (base32 "13kry578ifzz4m2f291bbd7v5v9zsi8y3mf38146cnqw0sv95kch"))
;; https://github.com/arvidn/libtorrent/issues/7566
;; Remove when resolved. I would hope this to be fixed in 2.0.10.
(modules '((guix build utils)))
(snippet
#~(substitute* "test/test_copy_file.cpp"
(("EXT4_SUPER_MAGIC, EXT3_SUPER_MAGIC, XFS_SUPER_MAGIC" all)
(string-append all ", TMPFS_MAGIC\n"))))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags '("-Dpython-bindings=ON" `(#:configure-flags '("-Dpython-bindings=ON"
"-Dbuild_tests=ON") "-Dbuild_tests=ON")
;; Tests do not reliably work when executed in parallel.
#:parallel-tests? #f
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'extend-test-timeout ;; https://github.com/arvidn/libtorrent/issues/7567
(lambda _ ;; Remove when resolved. I would hope this to be fixed in 2.0.10.
(substitute* "test/test_remove_torrent.cpp" ;; Do not forget to remove the %v2_empty_file.torrent variable.
;; Extend the test timeout from 3 seconds to 10. (add-before 'configure 'copy-v2_empty_file.torrent
(("i > 30") "i > 100")))) (lambda* (#:key native-inputs inputs #:allow-other-keys)
(copy-file (assoc-ref (or native-inputs inputs)
"%v2_empty_file.torrent")
"test/test_torrents/v2_empty_file.torrent")))
(replace 'check (replace 'check
(lambda* (#:key tests? parallel-tests? #:allow-other-keys) (lambda* (#:key tests? parallel-tests? #:allow-other-keys)
(let ((disabled-tests (let* ((disabled-tests
;; test_upnp requires a non-localhost IPv4 interface. '(
'("test_upnp"))) ;; Requires a non-localhost IPv4 interface.
"test_upnp"
;; test_ssl needs to be run separately.
"test_ssl"))
(exclude-regex (string-append "^("
(string-join disabled-tests "|")
")$"))
(timeout "600")
(jobs (if parallel-tests?
(number->string (parallel-job-count))
"1")))
(when tests? (when tests?
(invoke "ctest"
"-E" exclude-regex
"-j" jobs
"--timeout" timeout
"--output-on-failure")
;; test_ssl relies on bundled TLS certificates with a fixed ;; test_ssl relies on bundled TLS certificates with a fixed
;; expiry date. To ensure succesful builds in the future, ;; expiry date. To ensure succesful builds in the future,
;; fake the time to be roughly that of the release. ;; fake the time to be roughly that of the release.
(setenv "FAKETIME_ONLY_CMDS" "test_ssl") ;;
(invoke "faketime" "2022-10-24" ;; At the same time, faketime happens to cause
"ctest" ;; test_fast_extension, test_privacy and test_resolve_links
"--exclude-regex" (string-join disabled-tests "|") ;; to hang, even with FAKETIME_ONLY_CMDS. Not sure why. So
"-j" (if parallel-tests? ;; execute only test_ssl under faketime.
(number->string (parallel-job-count)) ;;
"1") ;; Note: The test_ssl test times out in the ci.
"--rerun-failed" ;; Temporarily disable it until that is resolved.
"--output-on-failure")))))))) ;; (invoke "faketime" "2022-10-24"
;; "ctest"
;; "-R" "^test_ssl$"
;; "-j" jobs
;; "--timeout" timeout
;; "--output-on-failure")
)))))))
(inputs (list boost openssl)) (inputs (list boost openssl))
(native-inputs (native-inputs `(("libfaketime" ,libfaketime)
(list libfaketime ("python-wrapper" ,python-wrapper)
python-wrapper ("pkg-config" ,pkg-config)
pkg-config)) ("%v2_empty_file.torrent" ,%v2_empty_file.torrent)))
(home-page "https://www.libtorrent.org/") (home-page "https://www.libtorrent.org/")
(synopsis "Feature-complete BitTorrent implementation") (synopsis "Feature-complete BitTorrent implementation")
(description (description
@ -469,10 +511,24 @@ focusing on efficiency and scalability. It runs on embedded devices as well as
desktops.") desktops.")
(license l:bsd-2))) (license l:bsd-2)))
(define-public libtorrent-rasterbar-1.2
(package
(inherit libtorrent-rasterbar)
(version "1.2.19")
(source
(origin
(method url-fetch)
(uri
(string-append "https://github.com/arvidn/libtorrent/"
"releases/download/v" version "/"
"libtorrent-rasterbar-" version ".tar.gz"))
(sha256
(base32 "03p4nvsll568zlyqifid0cn135sg5whbk7g48gkbapnw92ayks7f"))))))
(define-public qbittorrent (define-public qbittorrent
(package (package
(name "qbittorrent") (name "qbittorrent")
(version "4.5.5") (version "4.6.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -481,7 +537,7 @@ desktops.")
(commit (string-append "release-" version)))) (commit (string-append "release-" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1ngvvwhafi9mi05r2l9dk9x05za8x35y12p230wpzprydhlgwsxd")))) (base32 "1wps17iv4gj7y751fibvcxk51v09wyniv6xm2yx429dj7z8rfmzs"))))
(build-system qt-build-system) (build-system qt-build-system)
(arguments (arguments
(list #:configure-flags #~(list "-DTESTING=ON") (list #:configure-flags #~(list "-DTESTING=ON")
@ -490,7 +546,7 @@ desktops.")
(list qttools-5)) (list qttools-5))
(inputs (inputs
(list boost (list boost
libtorrent-rasterbar libtorrent-rasterbar-1.2
openssl openssl
python-wrapper python-wrapper
qtsvg-5 qtsvg-5
@ -526,7 +582,7 @@ features.")
(package (package
(inherit qbittorrent) (inherit qbittorrent)
(name "qbittorrent-enhanced") (name "qbittorrent-enhanced")
(version "4.5.5.10") (version "4.6.1.10")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -536,7 +592,7 @@ features.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"029crx8yd8apssg2k4alnc0py5i2sp3bhjkwki5fvvnpgkrhfqf0")))) "101a9n2vk9d6b4vc3schkmpc56l0i0i60fcjh8hwadc6amc2ymvy"))))
(home-page "https://github.com/c0re100/qBittorrent-Enhanced-Edition") (home-page "https://github.com/c0re100/qBittorrent-Enhanced-Edition")
(description (description
"qBittorrent Enhanced is a bittorrent client based on qBittorrent with "qBittorrent Enhanced is a bittorrent client based on qBittorrent with
@ -560,7 +616,7 @@ the following features:
(define-public deluge (define-public deluge
(package (package
(name "deluge") (name "deluge")
(version "2.0.5") (version "2.1.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -569,12 +625,13 @@ the following features:
(version-major+minor version) "/deluge-" version ".tar.xz")) (version-major+minor version) "/deluge-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1n15dzfnz1gvb4cf046yhi404i3gs933qgz0ichna6r1znmh9gf4")))) "1xyz8bscwqmd7d8b43svxl42w54pnisvwkkrndx46hifh0cx73bn"))))
(build-system python-build-system) (build-system python-build-system)
(inputs (list bash-minimal)) (inputs (list bash-minimal))
(propagated-inputs (propagated-inputs
(list gtk+ (list gtk+
libtorrent-rasterbar libtorrent-rasterbar
nss-certs
python-pycairo python-pycairo
python-chardet python-chardet
python-dbus python-dbus
@ -592,6 +649,9 @@ the following features:
(native-inputs (native-inputs
(list intltool python-wheel (list intltool python-wheel
(librsvg-for-system))) (librsvg-for-system)))
(native-search-paths
(list $SSL_CERT_DIR
$SSL_CERT_FILE))
;; TODO: Enable tests. ;; TODO: Enable tests.
;; After "pytest-twisted" is packaged, HOME is set, and an X server is ;; After "pytest-twisted" is packaged, HOME is set, and an X server is
;; started, some of the tests still fail. There are likely some tests ;; started, some of the tests still fail. There are likely some tests

View file

@ -221,3 +221,33 @@ fill and submit login forms if a matching password entry is found.")
(define-public passff/icecat (define-public passff/icecat
(make-icecat-extension passff)) (make-icecat-extension passff))
(define keepassxc-browser
(package
(name "keepassxc-browser")
(version "1.8.10")
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/keepassxreboot/keepassxc-browser")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1059kcb95ig18izbchwlb7pz41l4l3vjwzlmhz3w8zw2qxm6hrvx"))))
(build-system copy-build-system)
(properties
'((addon-id . "keepassxc-browser@keepassxc.org")))
(arguments
`(#:install-plan
'(("keepassxc-browser" ,(assq-ref properties 'addon-id)))))
(synopsis "Browser extension for the KeePassXC password manager")
(description
"This package provides an extension allow the browser to work together
with the @uref{https://keepassxc.org, KeePassXC} password manager.")
(home-page "https://keepassxc.org")
(license license:gpl3+)))
(define-public keepassxc-browser/icecat
(make-icecat-extension keepassxc-browser))

View file

@ -20,6 +20,7 @@
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org> ;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;; Copyright © 2023 zamfofex <zamfofex@twdb.moe> ;;; Copyright © 2023 zamfofex <zamfofex@twdb.moe>
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com> ;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
;;; Copyright © 2023 David Elsing <david.elsing@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -1588,3 +1589,57 @@ serial program, though the execution model is actually that a number of
program instances execute in parallel on the hardware.") program instances execute in parallel on the hardware.")
(home-page "https://github.com/ispc/ispc") (home-page "https://github.com/ispc/ispc")
(license license:bsd-3))) (license license:bsd-3)))
(define-public pcg-c
(let ((commit "83252d9c23df9c82ecb42210afed61a7b42402d7")
(revision "1"))
(package
(name "pcg-c")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/imneme/pcg-c")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0768h0vw75a3smk39qsz1504v04a43s5w1ili1ijbixxv8gm42nf"))
(modules '((guix build utils)))
;; Autogenerated files with some tests from test-high. If
;; 128-bit integers are not supported, the build fails, but
;; this is checked when building the tests.
(snippet #~(delete-file-recursively "sample"))))
(build-system gnu-build-system)
(arguments
(list
#:test-target "test"
#:make-flags
#~(list
"CC=gcc"
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'disable-sample
(lambda _
(substitute* "Makefile"
((".*cd sample.*") ""))))
(add-after 'unpack 'set-shared-library
(lambda _
(substitute* '("Makefile" "src/Makefile")
(("\\.a") "\\.so")
((".*ar .*") "\t$(CC) $(CFLAGS) -o $@ $(LDFLAGS) -shared $^")
((".*ranlib.*") "")
((".*CFLAGS \\+=.*O3.*" orig)
(string-append orig "CFLAGS += -fPIC\n")))))
(add-before 'install 'make-dirs
(lambda _
(mkdir-p (string-append #$output "/lib"))
(mkdir-p (string-append #$output "/include")))))))
(home-page "https://www.pcg-random.org")
(synopsis "C implementation of the PCG random generators")
(description "The Permuted Congruential Generator (PCG) extends the
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed

View file

@ -952,7 +952,7 @@ CD data, and more. It's mostly compatible with @code{cdrtools}.")
(define-public libmirage (define-public libmirage
(package (package
(name "libmirage") (name "libmirage")
(version "3.2.6") (version "3.2.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -960,7 +960,7 @@ CD data, and more. It's mostly compatible with @code{cdrtools}.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"19pjdmxhzl8y3brhg8fsv99b6jg4lfnl8jvcjgm4jmqrr684czr5")))) "1lxkpmad8l2wl0afp26jahzf5cxp10p0zl1a56lcqjwmsy0292gs"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
(list pkg-config intltool)) (list pkg-config intltool))

View file

@ -2358,14 +2358,14 @@ programs, something like CSmith, a random generator of C programs.")
(define-public python-lit (define-public python-lit
(package (package
(name "python-lit") (name "python-lit")
(version "16.0.0") (version "17.0.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "lit" version)) (uri (pypi-uri "lit" version))
(sha256 (sha256
(base32 (base32
"04dyv8b2nbdbn61zdgm042a21dwidyapn9zbinlf879a29rc6jiw")))) "06z3p85gsy5hw3rbk0ym8aig9mvry1327gz7dfjhjigwandszafz"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -2374,8 +2374,8 @@ programs, something like CSmith, a random generator of C programs.")
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(when tests? (when tests?
(invoke "python" "lit.py" "tests"))))))) (invoke "python" "lit.py" "tests")))))))
(native-inputs ;; This can be built with any version of llvm.
(list llvm-14)) (native-inputs (list llvm))
(home-page "https://llvm.org/") (home-page "https://llvm.org/")
(synopsis "LLVM Software Testing Tool") (synopsis "LLVM Software Testing Tool")
(description "@code{lit} is a portable tool for executing LLVM and Clang (description "@code{lit} is a portable tool for executing LLVM and Clang
@ -2721,7 +2721,7 @@ possible to write plugins to add your own checks.")
(base32 (base32
"16a1ac5n7k7sx15cnk03gw3fmslab3a7m74dc45rgpldgiff3577")))) "16a1ac5n7k7sx15cnk03gw3fmslab3a7m74dc45rgpldgiff3577"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (list python-pylint)) (propagated-inputs (list python-tomli python-pylint))
(home-page "https://github.com/johnnoone/setuptools-pylint") (home-page "https://github.com/johnnoone/setuptools-pylint")
(synopsis "Run pylint with @command{python setup.py lint}") (synopsis "Run pylint with @command{python setup.py lint}")
(description "This package expose pylint as a lint command into (description "This package expose pylint as a lint command into

View file

@ -466,7 +466,7 @@ and 32-bit PowerPC architectures.")
(package (package
(inherit chez-scheme) (inherit chez-scheme)
(name "chez-scheme-for-racket") (name "chez-scheme-for-racket")
(version "9.9.9-pre-release.17") (version "9.9.9-pre-release.18")
;; The version should match `scheme-version`. ;; The version should match `scheme-version`.
;; See racket/src/ChezScheme/s/cmacros.ss c. line 360. ;; See racket/src/ChezScheme/s/cmacros.ss c. line 360.
;; It will always be different than the upstream version! ;; It will always be different than the upstream version!

View file

@ -33,14 +33,14 @@
(define-public chicken (define-public chicken
(package (package
(name "chicken") (name "chicken")
(version "5.2.0") (version "5.3.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://code.call-cc.org/releases/" (uri (string-append "https://code.call-cc.org/releases/"
version "/chicken-" version ".tar.gz")) version "/chicken-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1yl0hxm9cirgcp8jgxp6vv29lpswfvaw3zfkh6rsj0vkrv44k4c1")))) "0xhdvcdwlv9vbhxh7k0fzd32ybhc7fn83y9fj48dhzp1z7c9kbf3"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules ((guix build gnu-build-system) `(#:modules ((guix build gnu-build-system)

View file

@ -967,7 +967,7 @@ testing.")
(name "ungoogled-chromium-wayland") (name "ungoogled-chromium-wayland")
(native-inputs '()) (native-inputs '())
(inputs (inputs
(list bash-minimal glibc-utf8-locales ungoogled-chromium)) (list bash-minimal (libc-utf8-locales-for-target) ungoogled-chromium))
(build-system trivial-build-system) (build-system trivial-build-system)
(arguments (arguments
(list (list

View file

@ -2922,7 +2922,7 @@ memoized as a function of '%current-system'."
;; store path has no dependencies. Actually, the really-final libc is ;; store path has no dependencies. Actually, the really-final libc is
;; built just below; the only difference is that this one uses the ;; built just below; the only difference is that this one uses the
;; bootstrap Bash. ;; bootstrap Bash.
(let ((libc (libc-for-target))) (let ((libc (libc-for-target (%current-system))))
(package (package
(inherit libc) (inherit libc)
(name "glibc-intermediate") (name "glibc-intermediate")
@ -3096,7 +3096,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define/system-dependent glibc-final (define/system-dependent glibc-final
;; The final glibc, which embeds the statically-linked Bash built above. ;; The final glibc, which embeds the statically-linked Bash built above.
;; Use 'package/inherit' so we get the 'replacement' of 'glibc', if any. ;; Use 'package/inherit' so we get the 'replacement' of 'glibc', if any.
(let ((libc (libc-for-target))) (let ((libc (libc-for-target (%current-system))))
(package/inherit libc (package/inherit libc
(name "glibc") (name "glibc")
(source (bootstrap-origin (package-source libc))) (source (bootstrap-origin (package-source libc)))

View file

@ -1263,7 +1263,7 @@ Google's C++ code base.")
((#:configure-flags flags) ((#:configure-flags flags)
#~(cons* "-DCMAKE_CXX_STANDARD=11" #$flags))))))) #~(cons* "-DCMAKE_CXX_STANDARD=11" #$flags)))))))
(define-public abseil-cpp (define-public abseil-cpp-20220623.1
(let ((base abseil-cpp-20200923.3)) (let ((base abseil-cpp-20200923.3))
(package (package
(inherit base) (inherit base)
@ -1284,16 +1284,40 @@ Google's C++ code base.")
`(cons* "-DABSL_BUILD_TESTING=ON" `(cons* "-DABSL_BUILD_TESTING=ON"
(delete "-DABSL_RUN_TESTS=ON" ,flags)))))))) (delete "-DABSL_RUN_TESTS=ON" ,flags))))))))
(define (abseil-cpp-for-c++-standard version) (define-public abseil-cpp
(let ((base abseil-cpp)) (let ((base abseil-cpp-20220623.1))
(hidden-package (package
(package/inherit base (inherit base)
(arguments (name "abseil-cpp")
(substitute-keyword-arguments (package-arguments base) (version "20230802.1")
((#:configure-flags flags) (source (origin
#~(cons* #$(string-append "-DCMAKE_CXX_STANDARD=" (method git-fetch)
(number->string version)) (uri (git-reference
#$flags)))))))) (url "https://github.com/abseil/abseil-cpp")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1ydkkbanrpkp5i814arzsk973kyzhhjhagnp392rq6rrv16apldq"))))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases)
#~(modify-phases #$phases
(add-before 'check 'set-env-vars
(lambda* (#:key inputs #:allow-other-keys)
;; absl_time_test requires this environment variable.
(setenv "TZDIR" (string-append #$(package-source base)
"/absl/time/internal/cctz/testdata/zoneinfo")))))))))))
(define (abseil-cpp-for-c++-standard base version)
(hidden-package
(package/inherit base
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:configure-flags flags)
#~(cons* #$(string-append "-DCMAKE_CXX_STANDARD="
(number->string version))
#$flags)))))))
(define (make-static-abseil-cpp version) (define (make-static-abseil-cpp version)
(let ((base abseil-cpp)) (let ((base abseil-cpp))
@ -1306,10 +1330,10 @@ Google's C++ code base.")
(delete "-DBUILD_SHARED_LIBS=ON" #$flags))))))))) (delete "-DBUILD_SHARED_LIBS=ON" #$flags)))))))))
(define-public abseil-cpp-cxxstd17 (define-public abseil-cpp-cxxstd17
(abseil-cpp-for-c++-standard 17)) ;XXX: the default with GCC 11? (abseil-cpp-for-c++-standard abseil-cpp 17)) ;XXX: the default with GCC 11?
(define-public abseil-cpp-cxxstd11 (define-public abseil-cpp-cxxstd11
(abseil-cpp-for-c++-standard 11)) (abseil-cpp-for-c++-standard abseil-cpp-20220623.1 11)) ;last version on C++11
(define-public static-abseil-cpp (define-public static-abseil-cpp
(make-static-abseil-cpp abseil-cpp)) (make-static-abseil-cpp abseil-cpp))
@ -2802,6 +2826,43 @@ Main features:
@end itemize") @end itemize")
(license license:expat))) (license license:expat)))
(define-public mapbox-variant
(package
(name "mapbox-variant")
(version "1.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mapbox/variant")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03cmxm34ralh8y07bs80gz3v4pql51206dn5h7lcnm7vishkk241"))
(modules '((guix build utils)))
(snippet #~(begin
(delete-file "test/include/catch.hpp")
(substitute* (find-files "test" "\\.[ch]pp")
(("\"catch.hpp\"") "<catch/catch.hpp>"))))))
(build-system gnu-build-system)
(arguments
(list #:test-target "test"
#:phases
#~(modify-phases %standard-phases
(delete 'bootstrap)
(delete 'configure)
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(copy-recursively "include"
(string-append (assoc-ref outputs "out")
"/include")))))))
(native-inputs (list catch2-1))
(home-page "https://github.com/mapbox/variant")
(synopsis "Implementation of std::variant for C++11/14")
(description "This package provides a header-only implementation of
std::variant (formerly boost::variant) for C++11/14.")
(license license:bsd-3)))
(define-public mpark-variant (define-public mpark-variant
(package (package
(name "mpark-variant") (name "mpark-variant")

File diff suppressed because it is too large Load diff

View file

@ -13,6 +13,7 @@
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -198,6 +199,32 @@ text or blue underlined text, on ANSI terminals.")
"1xif1bh938qpfc3d0f9xgidibpm65xix11w9gszwqnia00q7rb13")))) "1xif1bh938qpfc3d0f9xgidibpm65xix11w9gszwqnia00q7rb13"))))
(arguments `()))) (arguments `())))
(define-public rust-ansiterm-0.12
(package
(name "rust-ansiterm")
(version "0.12.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "ansiterm" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1k14pywvgd829swxzji0nchk4n6yvr9xz6lkwv96v8ax77sqgdaa"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs (("rust-ansi-colours" ,rust-ansi-colours-1)
("rust-serde" ,rust-serde-1)
("rust-winapi" ,rust-winapi-0.3))
#:cargo-development-inputs (("rust-doc-comment" ,rust-doc-comment-0.3)
("rust-regex" ,rust-regex-1)
("rust-serde-json" ,rust-serde-json-1))))
(home-page "https://github.com/rustadopt/ansiterm-rs")
(synopsis "Library for ANSI terminal colours and styles (bold, underline)")
(description
"This package provides a library for ANSI terminal colours and
styles (bold, underline).")
(license license:expat)))
(define-public rust-aom-sys-0.3 (define-public rust-aom-sys-0.3
(package (package
(name "rust-aom-sys") (name "rust-aom-sys")
@ -1134,7 +1161,9 @@ EUI-64, also known as MAC-48 media access control addresses.")
(base32 (base32
"0lilr4f335m1fq1acmshd51zblfaglw1hha6lhalnc1fw3cg0aag")))) "0lilr4f335m1fq1acmshd51zblfaglw1hha6lhalnc1fw3cg0aag"))))
(arguments (arguments
`(#:cargo-inputs `(#:cargo-test-flags
'("--release" "--lib" "--bins" "--tests")
#:cargo-inputs
(("rust-android-glue" ,rust-android-glue-0.2) (("rust-android-glue" ,rust-android-glue-0.2)
("rust-cgl" ,rust-cgl-0.3) ("rust-cgl" ,rust-cgl-0.3)
("rust-cocoa" ,rust-cocoa-0.19) ("rust-cocoa" ,rust-cocoa-0.19)
@ -1170,7 +1199,9 @@ EUI-64, also known as MAC-48 media access control addresses.")
(base32 (base32
"1ggyyqn7dvz4yx5ygqfvnxwfb78wvdm5y6xqw5my1b4x61dv6wak")))) "1ggyyqn7dvz4yx5ygqfvnxwfb78wvdm5y6xqw5my1b4x61dv6wak"))))
(arguments (arguments
`(#:cargo-inputs `(#:cargo-test-flags
'("--release" "--lib" "--bins" "--tests")
#:cargo-inputs
(("rust-android-glue" ,rust-android-glue-0.2) (("rust-android-glue" ,rust-android-glue-0.2)
("rust-cgl" ,rust-cgl-0.2) ("rust-cgl" ,rust-cgl-0.2)
("rust-cocoa" ,rust-cocoa-0.18) ("rust-cocoa" ,rust-cocoa-0.18)
@ -4025,8 +4056,7 @@ the platform-specific getters provided by winit, or another library.")
(uri (crate-uri "y4m" version)) (uri (crate-uri "y4m" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "1bhdgb7hgx7j92nm6ij5n8wisp50j8ff66ks14jzwdw2mwhrjam7")))) (base32 "1bhdgb7hgx7j92nm6ij5n8wisp50j8ff66ks14jzwdw2mwhrjam7"))))))
(arguments `(#:skip-build? #t))))
;;; ;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances ;;; Avoid adding new packages to the end of this file. To reduce the chances

File diff suppressed because it is too large Load diff

View file

@ -9,6 +9,7 @@
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz> ;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -27,11 +28,13 @@
(define-module (gnu packages cross-base) (define-module (gnu packages cross-base)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages avr)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages hurd) #:use-module (gnu packages hurd)
#:use-module (gnu packages mingw) #:use-module (gnu packages mingw)
#:use-module (guix memoization)
#:use-module (guix platform) #:use-module (guix platform)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix diagnostics) #:use-module (guix diagnostics)
@ -39,6 +42,7 @@
#:use-module (guix i18n) #:use-module (guix i18n)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)
@ -48,7 +52,8 @@
cross-libc cross-libc
cross-gcc cross-gcc
cross-mig cross-mig
cross-kernel-headers)) cross-kernel-headers
cross-gcc-toolchain))
(define-syntax %xgcc (define-syntax %xgcc
;; GCC package used as the basis for cross-compilation. It doesn't have to ;; GCC package used as the basis for cross-compilation. It doesn't have to
@ -196,18 +201,44 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
#~((string-append "--with-toolexeclibdir=" #~((string-append "--with-toolexeclibdir="
(assoc-ref %outputs "lib") (assoc-ref %outputs "lib")
"/" #$target "/lib")) "/" #$target "/lib"))
#~())
#$@(if (target-avr? target)
#~("--enable-multilib")
#~())
#$@(if (and libc (target-avr? target))
#~(;; By default GCC will attemp to compile
;; some libraries for other languages (objc,
;; fortran) but compilation fails for AVR.
"--enable-languages=c,c++"
(string-append "--with-native-system-header-dir="
#$libc "/" #$target "/include"))
#~())) #~()))
#$(if libc (remove
flags (lambda (flag)
#~(remove (cut string-match "--enable-languages.*" <>) (or (and #$libc
#$flags)))) (string-prefix? "--enable-languages" flag))
(and #$libc
#$(target-avr? target)
(string-prefix? "--with-native-system-header-dir"
flag))
(and #$(target-avr? target)
(string=? flag "--disable-multilib"))))
#$flags)))
((#:make-flags flags) ((#:make-flags flags)
(if libc (if libc
#~(let ((libc (assoc-ref %build-inputs "libc"))) #~(let ((libc (assoc-ref %build-inputs "libc"))
(lib-prefix (if #$(target-avr? target)
(string-append "/" #$target)
"")))
;; FLAGS_FOR_TARGET are needed for the target libraries to receive ;; FLAGS_FOR_TARGET are needed for the target libraries to receive
;; the -Bxxx for the startfiles. ;; the -Bxxx for the startfiles.
(cons (string-append "FLAGS_FOR_TARGET=-B" libc "/lib") (cons (string-append "FLAGS_FOR_TARGET=-B"
libc lib-prefix "/lib")
#$flags)) #$flags))
flags)) flags))
((#:phases phases) ((#:phases phases)
@ -241,6 +272,31 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
"-DTOOLDIR_BASE_PREFIX=\\\"../../../../\\\"")) "-DTOOLDIR_BASE_PREFIX=\\\"../../../../\\\""))
#t)) #t))
(define (cross-gcc-search-paths target)
"Return list of GCC search path specifications needed for TARGET."
(cons (search-path-specification
(variable "CROSS_LIBRARY_PATH")
(files `("lib" "lib64"
,@(list (string-append target "/lib")
(string-append target "/lib64")))))
(map (lambda (variable)
(search-path-specification
(variable variable)
;; Add 'include/c++' here so that <cstdlib>'s
;; "#include_next <stdlib.h>" finds GCC's
;; <stdlib.h>, not libc's.
(files (match variable
("CROSS_CPLUS_INCLUDE_PATH"
`("include/c++" "include"
,@(list (string-append target "/include/c++")
(string-append target "/include"))))
(_
`("include"
,(string-append target "/include")))))))
%gcc-cross-include-paths)))
(define* (cross-gcc target (define* (cross-gcc target
#:key #:key
(xgcc %xgcc) (xgcc %xgcc)
@ -321,6 +377,9 @@ target that libc."
("libc" ,libc)) ("libc" ,libc))
`(,@inputs `(,@inputs
("mingw-source" ,(package-source mingw-w64))))) ("mingw-source" ,(package-source mingw-w64)))))
((and libc (target-avr? target))
`(,@inputs
("libc" ,libc)))
(libc (libc
`(,@inputs `(,@inputs
("libc" ,libc) ("libc" ,libc)
@ -333,22 +392,7 @@ target that libc."
(inputs '()) (inputs '())
;; Only search target inputs, not host inputs. ;; Only search target inputs, not host inputs.
(search-paths (cons (search-path-specification (search-paths (cross-gcc-search-paths target))
(variable "CROSS_LIBRARY_PATH")
(files '("lib" "lib64")))
(map (lambda (variable)
(search-path-specification
(variable variable)
;; Add 'include/c++' here so that <cstdlib>'s
;; "#include_next <stdlib.h>" finds GCC's
;; <stdlib.h>, not libc's.
(files (match variable
("CROSS_CPLUS_INCLUDE_PATH"
'("include/c++" "include"))
(_
'("include"))))))
%gcc-cross-include-paths)))
(native-search-paths '()))) (native-search-paths '())))
(define* (cross-kernel-headers . args) (define* (cross-kernel-headers . args)
@ -610,74 +654,127 @@ the base compiler. Use XBINUTILS as the associated cross-Binutils."
(xbinutils (cross-binutils target)) (xbinutils (cross-binutils target))
(xheaders (cross-kernel-headers target))) (xheaders (cross-kernel-headers target)))
"Return LIBC cross-built for TARGET, a GNU triplet. Use XGCC and XBINUTILS "Return LIBC cross-built for TARGET, a GNU triplet. Use XGCC and XBINUTILS
and the cross tool chain." and the cross tool chain. If TARGET doesn't have a standard C library #f is
(if (target-mingw? target) returned."
(let ((machine (substring target 0 (string-index target #\-)))) (match target
(make-mingw-w64 machine ((? target-mingw?)
#:xgcc xgcc (let ((machine (substring target 0 (string-index target #\-))))
#:xbinutils xbinutils)) (make-mingw-w64 machine
(package #:xgcc xgcc
(inherit libc) #:xbinutils xbinutils)))
(name (string-append "glibc-cross-" target)) ((or (? target-linux?) (? target-hurd?))
(arguments (package
(substitute-keyword-arguments (inherit libc)
`( ;; Disable stripping (see above.) (name (string-append "glibc-cross-" target))
#:strip-binaries? #f (arguments
(substitute-keyword-arguments
`(;; Disable stripping (see above.)
#:strip-binaries? #f
;; This package is used as a target input, but it should not have ;; This package is used as a target input, but it should not have
;; the usual cross-compilation inputs since that would include ;; the usual cross-compilation inputs since that would include
;; itself. ;; itself.
#:implicit-cross-inputs? #f #:implicit-cross-inputs? #f
;; We need SRFI 26. ;; We need SRFI 26.
#:modules ((guix build gnu-build-system) #:modules ((guix build gnu-build-system)
(guix build utils) (guix build utils)
(srfi srfi-26)) (srfi srfi-26))
,@(package-arguments libc)) ,@(package-arguments libc))
((#:configure-flags flags) ((#:configure-flags flags)
`(cons ,(string-append "--host=" target) `(cons ,(string-append "--host=" target)
,(if (target-hurd? target) ,(if (target-hurd? target)
`(append (list "--disable-werror" `(append (list "--disable-werror"
,@%glibc/hurd-configure-flags) ,@%glibc/hurd-configure-flags)
,flags) ,flags)
flags))) flags)))
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases `(modify-phases ,phases
(add-before 'configure 'set-cross-kernel-headers-path (add-before 'configure 'set-cross-kernel-headers-path
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let* ((kernel (assoc-ref inputs "kernel-headers")) (let* ((kernel (assoc-ref inputs "kernel-headers"))
(cpath (string-append kernel "/include"))) (cpath (string-append kernel "/include")))
(for-each (cut setenv <> cpath) (for-each (cut setenv <> cpath)
',%gcc-cross-include-paths) ',%gcc-cross-include-paths)
(setenv "CROSS_LIBRARY_PATH" (setenv "CROSS_LIBRARY_PATH"
(string-append kernel "/lib")) ; for Hurd's libihash (string-append kernel "/lib")) ; for Hurd's libihash
#t))) #t)))
,@(if (target-hurd? target) ,@(if (target-hurd? target)
'((add-after 'install 'augment-libc.so '((add-after 'install 'augment-libc.so
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))) (let* ((out (assoc-ref outputs "out")))
(substitute* (string-append out "/lib/libc.so") (substitute* (string-append out "/lib/libc.so")
(("/[^ ]+/lib/libc.so.0.3") (("/[^ ]+/lib/libc.so.0.3")
(string-append out "/lib/libc.so.0.3" (string-append out "/lib/libc.so.0.3"
" libmachuser.so libhurduser.so")))) " libmachuser.so libhurduser.so"))))
#t))) #t)))
'()))))) '())))))
;; Shadow the native "kernel-headers" because glibc's recipe expects the ;; Shadow the native "kernel-headers" because glibc's recipe expects the
;; "kernel-headers" input to point to the right thing. ;; "kernel-headers" input to point to the right thing.
(propagated-inputs `(("kernel-headers" ,xheaders))) (propagated-inputs `(("kernel-headers" ,xheaders)))
(native-inputs `(("cross-gcc" ,xgcc) (native-inputs `(("cross-gcc" ,xgcc)
("cross-binutils" ,xbinutils) ("cross-binutils" ,xbinutils)
,@(if (target-hurd? target) ,@(if (target-hurd? target)
`(("cross-mig" `(("cross-mig"
,(cross-mig target ,(cross-mig target
#:xgcc xgcc #:xgcc xgcc
#:xbinutils xbinutils))) #:xbinutils xbinutils)))
'()) '())
,@(package-inputs libc) ;FIXME: static-bash ,@(package-inputs libc) ;FIXME: static-bash
,@(package-native-inputs libc)))))) ,@(package-native-inputs libc)))))
((? target-avr?)
(make-avr-libc #:xbinutils xbinutils
#:xgcc xgcc))
(else #f)))
(define* (cross-gcc-toolchain/implementation target
#:key
(base-gcc %xgcc)
(xbinutils (cross-binutils target))
(libc (cross-libc
target
#:xgcc (cross-gcc target #:xgcc base-gcc)
#:xbinutils xbinutils))
(xgcc (cross-gcc target
#:xgcc base-gcc
#:libc libc
#:xbinutils xbinutils)))
"Returns PACKAGE that contains a cross-compilation tool chain for TARGET
with XBINUTILS, XGCC and LIBC (if exists for TARGET)."
(package
(name (string-append (package-name xgcc) "-toolchain"))
(version (package-version xgcc))
(source #f)
(build-system trivial-build-system)
(arguments
(list #:modules '((guix build union))
#:builder
#~(begin
(use-modules (ice-9 match)
(guix build union))
(match %build-inputs
(((names . directory) ...)
(union-build #$output directory))))))
(inputs `(,xbinutils ,xgcc ,@(if libc (list libc) '())))
(home-page (package-home-page xgcc))
(synopsis
(format #f "Complete GCC tool chain for C/C++ development (~a)" target))
(description "This package provides a complete GCC cross toolchain for
C/C++ development to be installed in user profiles. This includes GCC, as
well as libc (headers and binariesl), and Binutils. GCC is the GNU Compiler
Collection.")
(license (delete-duplicates `(,(package-license xgcc)
,(package-license xbinutils)
,@(if libc
(list (package-license libc))
'()))))))
(define cross-gcc-toolchain
(memoize cross-gcc-toolchain/implementation))
;;; Concrete cross tool chains are instantiated like this: ;;; Concrete cross tool chains are instantiated like this:

View file

@ -0,0 +1,42 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
;;;
;;; 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 (gnu packages cross-toolchain)
#:use-module (gnu packages cross-base)
#:use-module (guix packages))
;;; Commentary:
;;;
;;; This module provides packages for cross compilation toolchains. These
;;; packages must not be used at the top level to avoid cyclic module
;;; dependencies caused by the (gnu packages cross-base) module referring to
;;; to top level bindings from (gnu packages gcc).
;;;
;;; The real purpose of these packages is for installation on profiles by users
;;; and other packages should make use of the toolchain through the usual cross
;;; compilation methods. For example, by using the `#:target' argument on
;;; packages or `--target' on the command line.
(define-public gcc-cross-avr-toolchain
(cross-gcc-toolchain "avr"))
(define-public gcc-cross-i686-w64-mingw32-toolchain
(cross-gcc-toolchain "i686-w64-mingw32"))
(define-public gcc-cross-x86_64-w64-mingw32-toolchain
(cross-gcc-toolchain "x86_64-w64-mingw32"))

View file

@ -343,7 +343,7 @@ applications''. These must be installed separately.")
(define cups-minimal/fixed (define cups-minimal/fixed
(package (package
(inherit cups-minimal) (inherit cups-minimal)
(version "2.4.6") (version "2.4.7")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -352,7 +352,7 @@ applications''. These must be installed separately.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name "cups" version)) (file-name (git-file-name "cups" version))
(sha256 (sha256
(base32 "0z70rhfd96qmdx82gdhh2nqjiia0lnvfdwpngjkag2sidw4cm3c1")))))) (base32 "0cj3gs7ki9v0drj19l326s8f1kxrpq7jkzrdfdk7ykrlk7sj645f"))))))
(define-public cups (define-public cups
(package/inherit cups-minimal (package/inherit cups-minimal
@ -521,14 +521,14 @@ should only be used as part of the Guix cups-pk-helper service.")
(define-public hplip (define-public hplip
(package (package
(name "hplip") (name "hplip")
(version "3.23.8") (version "3.23.12")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/hplip/hplip/" version (uri (string-append "mirror://sourceforge/hplip/hplip/" version
"/hplip-" version ".tar.gz")) "/hplip-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0ihv9ddjrjx5bdf8pwc2fvljkpfzq4qi9r2awm8dgky053v0bk7p")) "1vb9irqsm3d4c2qdr4h6ia940x65bb99h4x31mgxn7dkvv42lv57"))
(patches (search-patches "hplip-usb-timeout.patch")) (patches (search-patches "hplip-usb-timeout.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet

View file

@ -150,6 +150,7 @@
(display "533\n" port) (display "533\n" port)
(display "537\n" port) (display "537\n" port)
(display "546\n" port) (display "546\n" port)
(display "564\n" port)
(display "575\n" port) (display "575\n" port)
(display "1021\n" port) (display "1021\n" port)
(display "1501\n" port) (display "1501\n" port)

View file

@ -3596,7 +3596,11 @@ You might also want to install the following optional dependencies:
(uri (pypi-uri "alchemy-mock" version)) (uri (pypi-uri "alchemy-mock" version))
(sha256 (sha256
(base32 (base32
"0ylxygl3bcdapzz529n8wgk7vx9gjwb3ism564ypkpd7dbsw653r")))) "0ylxygl3bcdapzz529n8wgk7vx9gjwb3ism564ypkpd7dbsw653r"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "alchemy_mock/comparison.py"
(("collections\\.Mapping") "collections.abc.Mapping"))))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:phases (modify-phases %standard-phases '(#:phases (modify-phases %standard-phases
@ -4389,7 +4393,7 @@ the SQL language using a syntax that reflects the resulting query.")
(define-public apache-arrow (define-public apache-arrow
(package (package
(name "apache-arrow") (name "apache-arrow")
(version "13.0.0") (version "14.0.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -4399,7 +4403,7 @@ the SQL language using a syntax that reflects the resulting query.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"03ykynzz01ar2y4blhcxjh6xsi0gqv380h5m669dddfz2isplsf8")))) "08x01jcibmx03g9p0sjikp3dyynw6is6gyn0m3cy1gwkpkwk2ad2"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
(list (list

View file

@ -149,15 +149,15 @@ contains the archive keys used for that.")
(define-public ubuntu-keyring (define-public ubuntu-keyring
(package (package
(name "ubuntu-keyring") (name "ubuntu-keyring")
(version "2021.03.26") (version "2023.11.28.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://launchpad.net/ubuntu/+archive/primary/" (uri (string-append "https://launchpad.net/ubuntu/+archive/primary/"
"+files/" name "_" version ".tar.gz")) "+files/" name "_" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1ccvwh4s51viyhcg8gh189jmvbrhc5wv1bbp4minz3200rffsbj9")))) "0bmafky67hrb79baaydmw7al21lz0wgi4ks5dqfkfqamw5d4bkdf"))))
(build-system trivial-build-system) (build-system trivial-build-system)
(arguments (arguments
`(#:modules ((guix build utils)) `(#:modules ((guix build utils))
@ -167,7 +167,7 @@ contains the archive keys used for that.")
(apt (string-append out "/etc/apt/trusted.gpg.d/")) (apt (string-append out "/etc/apt/trusted.gpg.d/"))
(key (string-append out "/share/keyrings/"))) (key (string-append out "/share/keyrings/")))
(setenv "PATH" (string-append (setenv "PATH" (string-append
(assoc-ref %build-inputs "gzip") "/bin:" (assoc-ref %build-inputs "xz") "/bin:"
(assoc-ref %build-inputs "tar") "/bin")) (assoc-ref %build-inputs "tar") "/bin"))
(invoke "tar" "xvf" (assoc-ref %build-inputs "source")) (invoke "tar" "xvf" (assoc-ref %build-inputs "source"))
(for-each (lambda (file) (for-each (lambda (file)
@ -175,10 +175,9 @@ contains the archive keys used for that.")
(find-files "." "ubuntu-[^am].*\\.gpg$")) (find-files "." "ubuntu-[^am].*\\.gpg$"))
(for-each (lambda (file) (for-each (lambda (file)
(install-file file key)) (install-file file key))
(find-files "." "ubuntu-[am].*\\.gpg$"))) (find-files "." "ubuntu-[am].*\\.gpg$"))))))
#t)))
(native-inputs (native-inputs
(list tar gzip)) (list tar xz))
(home-page "https://launchpad.net/ubuntu/+source/ubuntu-keyring") (home-page "https://launchpad.net/ubuntu/+source/ubuntu-keyring")
(synopsis "GnuPG keys of the Ubuntu archive") (synopsis "GnuPG keys of the Ubuntu archive")
(description (description
@ -341,7 +340,7 @@ distributions such as Debian and Trisquel.")
(define-public dpkg (define-public dpkg
(package (package
(name "dpkg") (name "dpkg")
(version "1.22.0") (version "1.22.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -350,7 +349,7 @@ distributions such as Debian and Trisquel.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1p7f2mgrn2iy0xfysxfq4pjbbhbhb2rp649bsik0x25jrck4if83")))) (base32 "1s6dzcczmpkr9pla25idymfdjz10gck0kphpp0vqbp92vmfskipg"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:modules (list #:modules

View file

@ -25,28 +25,33 @@
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages pkg-config)) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pth))
(define-public dezyne (define-public dezyne
(package (package
(name "dezyne") (name "dezyne")
(version "2.17.8") (version "2.18.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://dezyne.org/download/dezyne/" (uri (string-append "https://dezyne.org/download/dezyne/"
name "-" version ".tar.gz")) name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "0m5cnymcyg7k1jhp4xjpvpay7ia72xdzyjnjg0spsr4p7fy7yql4")))) (base32 "1lbrxycpvwmvif3gpjnz8iskvlxp7f8bl71k44j7acwqrp8j2szi"))))
(propagated-inputs (list boost
guile-json-4
guile-readline
scmackerel))
(inputs (list bash-minimal (inputs (list bash-minimal
guile-3.0-latest guile-3.0
guile-json-4
guile-readline
mcrl2-minimal mcrl2-minimal
pth
sed)) sed))
(native-inputs (list guile-3.0-latest pkg-config)) (native-inputs (list guile-3.0 pkg-config))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -58,21 +63,20 @@
(lambda _ (lambda _
(setenv "GUILE_AUTO_COMPILE" "0"))) (setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'install-readmes (add-after 'install 'install-readmes
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (let* ((base (string-append #$name "-" #$version))
(base (string-append #$name "-" #$version)) (doc (string-append #$output "/share/doc/" base)))
(doc (string-append out "/share/doc/" base)))
(mkdir-p doc) (mkdir-p doc)
(copy-file "NEWS" (string-append doc "/NEWS"))))) (copy-file "NEWS" (string-append doc "/NEWS")))))
(add-after 'install 'wrap-binaries (add-after 'install 'wrap-binaries
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (let* ((bash #$(this-package-input "bash-minimal"))
(bash (assoc-ref %build-inputs "bash-minimal")) (guile #$(this-package-input "guile"))
(guile (assoc-ref %build-inputs "guile")) (json #$(this-package-input "guile-json"))
(json (assoc-ref %build-inputs "guile-json")) (mcrl2 #$(this-package-input "mcrl2-minimal"))
(mcrl2 (assoc-ref %build-inputs "mcrl2-minimal")) (readline #$(this-package-input "guile-readline"))
(readline (assoc-ref %build-inputs "guile-readline")) (scmackerel #$(this-package-input "scmackerel"))
(sed (assoc-ref %build-inputs "sed")) (sed #$(this-package-input "sed"))
(effective (read (effective (read
(open-pipe* OPEN_READ (open-pipe* OPEN_READ
"guile" "-c" "guile" "-c"
@ -83,15 +87,17 @@
(string-append sed "/bin"))) (string-append sed "/bin")))
(scm-dir (string-append "/share/guile/site/" effective)) (scm-dir (string-append "/share/guile/site/" effective))
(scm-path (scm-path
(list (string-append out scm-dir) (list (string-append #$output scm-dir)
(string-append json scm-dir) (string-append json scm-dir)
(string-append readline scm-dir))) (string-append readline scm-dir)
(string-append scmackerel scm-dir)))
(go-dir (string-append "/lib/guile/" effective (go-dir (string-append "/lib/guile/" effective
"/site-ccache/")) "/site-ccache/"))
(go-path (list (string-append out go-dir) (go-path (list (string-append #$output go-dir)
(string-append json go-dir) (string-append json go-dir)
(string-append readline go-dir)))) (string-append readline go-dir)
(wrap-program (string-append out "/bin/dzn") (string-append scmackerel go-dir))))
(wrap-program (string-append #$output "/bin/dzn")
`("PATH" ":" prefix ,path) `("PATH" ":" prefix ,path)
`("GUILE_AUTO_COMPILE" ":" = ("0")) `("GUILE_AUTO_COMPILE" ":" = ("0"))
`("GUILE_LOAD_PATH" ":" prefix ,scm-path) `("GUILE_LOAD_PATH" ":" prefix ,scm-path)
@ -105,3 +111,43 @@ has formal semantics expressed in @url{https://mcrl2.org,mCRL2}.")
(license (list license:agpl3+ ;Dezyne itself (license (list license:agpl3+ ;Dezyne itself
license:lgpl3+ ;Dezyne runtime library license:lgpl3+ ;Dezyne runtime library
license:cc0)))) ;Code snippets, images, test data license:cc0)))) ;Code snippets, images, test data
(define-public scmackerel
(package
(name "scmackerel")
(version "0.5.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://dezyne.org/download/scmackerel/"
name "-" version ".tar.gz"))
(sha256
(base32 "1sgrkw3idsni1ylf0slwgzzwq31b1yx6s0j17yq99c88agk9cvd6"))))
(inputs (list bash-minimal
guile-3.0
guile-readline
mcrl2-minimal))
(native-inputs (list guile-3.0 pkg-config))
(build-system gnu-build-system)
(arguments
(list
#:modules `((ice-9 popen)
,@%gnu-build-system-modules)
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'setenv
(lambda _
(setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'install-readmes
(lambda _
(let* ((base (string-append #$name "-" #$version))
(doc (string-append #$output "/share/doc/" base)))
(mkdir-p doc)
(copy-file "NEWS" (string-append doc "/NEWS"))))))))
(synopsis "AST library in GNU Guile")
(description "SCMackerel is a library in GNU Guile to create abstract
syntax trees (ASTs). Initially written for @url{https://mcrl2.org,mCRL2} and
now also supporting other languages, such as C, C++, and C#. Based on GNU
Guix records.")
(home-page "https://gitlab.com/janneke/scmackerel")
(license (list license:gpl3+))))

View file

@ -1651,7 +1651,7 @@ gone and to help you to clean it up.")
(define-public nwipe (define-public nwipe
(package (package
(name "nwipe") (name "nwipe")
(version "0.34") (version "0.35")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1660,7 +1660,7 @@ gone and to help you to clean it up.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1frwjgz4mpzwr9sigr693crmxsjl08wcikh6ik7dm0x40l1kqqpd")))) (base32 "1bj20y52qzz2ja56yf1pxqjg3lsda35c2k5hcj3lqm69jpsla2wq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:phases (list #:phases
@ -1674,7 +1674,13 @@ gone and to help you to clean it up.")
"sbin/hdparm" "sbin/hdparm"
"sbin/smartctl"))))))))) "sbin/smartctl")))))))))
(inputs (inputs
(list bash-minimal dmidecode hdparm ncurses parted smartmontools)) (list bash-minimal
dmidecode
hdparm
libconfig
ncurses
parted
smartmontools))
(native-inputs (native-inputs
(list autoconf automake libtool pkg-config)) (list autoconf automake libtool pkg-config))
(home-page "https://github.com/martijnvanbrummelen/nwipe") (home-page "https://github.com/martijnvanbrummelen/nwipe")

View file

@ -57,7 +57,7 @@
(define-public d-tools (define-public d-tools
(package (package
(name "d-tools") (name "d-tools")
(version "2.100.0") (version "2.105.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -66,7 +66,7 @@
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1jbn0hyskv4ykcckw0iganpyrm0bq2lggswspw21r4hgnxkmjbyw")))) (base32 "0hvz786k0pi8697x1vk9x5bx52jiy7pvi13wmfkx15ddvv0x5j33"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:phases (list #:phases
@ -149,21 +149,23 @@ to a minimal test case.")
(define ldc-bootstrap (define ldc-bootstrap
(package (package
(name "ldc") (name "ldc")
(version "1.32.2") (version "1.35.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/ldc-developers/ldc/releases" (uri (string-append "https://github.com/ldc-developers/ldc/releases"
"/download/v" version "/ldc-" version "-src.tar.gz")) "/download/v" version "/ldc-" version "-src.tar.gz"))
(sha256 (sha256
(base32 "15fdl7fy1ssjxpyb9g54ac4xzcirycly521whil142ijfkpam95z")))) (base32 "186z4r1d8y4dfpv5cdqgz9al6w7qnfh9l4q9ws9w0xkcf29njabf"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:disallowed-references (,tzdata-for-tests) `(#:disallowed-references (,tzdata-for-tests)
#:tests? #f ;skip in the bootstrap #:tests? #f ;skip in the bootstrap
#:build-type "Release" #:build-type "Release"
#:configure-flags #:configure-flags
(list "-GNinja") (list "-GNinja"
;; see .github/actions/2-build-bootstrap/action.yml
"-DBUILD_SHARED_LIBS=OFF")
#:make-flags ;used as build targets #:make-flags ;used as build targets
(list "all") (list "all")
#:phases #:phases
@ -224,10 +226,9 @@ bootstrapping more recent compilers written in D.")
'(list "all" '(list "all"
;; Also build the test runner binaries. ;; Also build the test runner binaries.
"ldc2-unittest" "all-test-runners")) "ldc2-unittest" "all-test-runners"))
((#:configure-flags flags) ((#:configure-flags _ #~'())
`(,@flags "-DBUILD_SHARED_LIBS=ON" `(list "-GNinja"
"-DLDC_LINK_MANUALLY=OFF" "-DBUILD_SHARED_LIBS=ON"))
"-DLDC_DYNAMIC_COMPILE=OFF"))
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases `(modify-phases ,phases
(add-after 'unpack 'fix-compiler-rt-library-discovery (add-after 'unpack 'fix-compiler-rt-library-discovery
@ -236,19 +237,12 @@ bootstrapping more recent compilers written in D.")
(system ,(or (%current-target-system) (system ,(or (%current-target-system)
(%current-system)))) (%current-system))))
(define (gnu-triplet->clang-arch system) (define (gnu-triplet->clang-arch system)
(letrec-syntax (let ((system-prefix
((matches (syntax-rules (=>) (car (string-tokenize
((_ (system-prefix => target) rest ...) system (char-set-complement (char-set #\-))))))
(if (string-prefix? system-prefix system) (cond
target ((equal? system-prefix "i686") "i386")
(matches rest ...))) (#t system-prefix))))
((_)
(error "Clang target for system is unknown"
system)))))
(matches ("x86_64" => "x86_64")
("i686" => "i386")
("armhf" => "armhf")
("aarch64" => "aarch64"))))
;; Coax LLVM into agreeing with Clang about system target ;; Coax LLVM into agreeing with Clang about system target
;; naming. ;; naming.
(substitute* "driver/linker-gcc.cpp" (substitute* "driver/linker-gcc.cpp"
@ -264,7 +258,8 @@ bootstrapping more recent compilers written in D.")
"/lib/linux\",\n")))))) "/lib/linux\",\n"))))))
(add-after 'unpack 'patch-paths-in-tests (add-after 'unpack 'patch-paths-in-tests
(lambda _ (lambda _
(substitute* "tests/dmd/Makefile" (substitute* '("tests/dmd/Makefile"
"runtime/druntime/test/profile/Makefile")
(("/bin/bash") (which "bash"))) (("/bin/bash") (which "bash")))
(substitute* "tests/linking/linker_switches.d" (substitute* "tests/linking/linker_switches.d"
(("echo") (which "echo"))) (("echo") (which "echo")))
@ -299,6 +294,8 @@ bootstrapping more recent compilers written in D.")
(substitute* "runtime/druntime/test/exceptions/Makefile" (substitute* "runtime/druntime/test/exceptions/Makefile"
((".*TESTS\\+=rt_trap_exceptions_drt_gdb.*") ((".*TESTS\\+=rt_trap_exceptions_drt_gdb.*")
"")) ""))
;; Unsupported with glibc-2.35.
(delete-file "tests/dmd/compilable/stdcheaders.c")
;; Drop gdb_dflags from the test suite. ;; Drop gdb_dflags from the test suite.
(substitute* "tests/dmd/CMakeLists.txt" (substitute* "tests/dmd/CMakeLists.txt"
(("\\$\\{gdb_dflags\\}") "")) (("\\$\\{gdb_dflags\\}") ""))
@ -365,7 +362,7 @@ integration tests...\n")
(define-public dub (define-public dub
(package (package
(name "dub") (name "dub")
(version "1.23.0") (version "1.33.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -374,7 +371,7 @@ integration tests...\n")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "06a4whsl1m600k096nwif83n7za3vr7pj1xwapncy5fcad1gmady")))) (base32 "09p3rvsv11f8lgqgxgz2zj0szsw5lzrsc7y7471hswksc7nmmj70"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:tests? #f ; tests try to install packages (list #:tests? #f ; tests try to install packages

View file

@ -844,7 +844,7 @@ Extensions} (DNSSEC).")
(define-public knot (define-public knot
(package (package
(name "knot") (name "knot")
(version "3.3.1") (version "3.3.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -853,7 +853,7 @@ Extensions} (DNSSEC).")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0l29809wcpx4q1d87539799c4mai0vvfkzkbmrba186mn47p3lsd")) (base32 "17zdpk6wf0cf90dp4cls35si8ywjsqjrmgssw2gmb1y0zfyp19vq"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 David Thompson <davet@gnu.org> ;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020, 2021, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019, 2020, 2021, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
@ -299,7 +299,10 @@ the required network abstractions for applications.")
(inherit docker-libnetwork) (inherit docker-libnetwork)
(name "docker-libnetwork-cmd-proxy") (name "docker-libnetwork-cmd-proxy")
(arguments (arguments
`(#:import-path "github.com/docker/libnetwork/cmd/proxy" ;; The tests are unsupported on all architectures except x86_64-linux.
`(#:tests? ,(and (not (%current-target-system))
(target-x86-64?))
#:import-path "github.com/docker/libnetwork/cmd/proxy"
#:unpack-path "github.com/docker/libnetwork" #:unpack-path "github.com/docker/libnetwork"
#:install-source? #f)) #:install-source? #f))
(native-inputs (native-inputs

View file

@ -411,6 +411,27 @@ reading the extensive documentation about BookmarkPlus on the Emacs Wiki.")
input via a small child-frame spawned at the position of the cursor.") input via a small child-frame spawned at the position of the cursor.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-arei
(package
(name "emacs-arei")
(version "0.9.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~abcdw/emacs-arei")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"12vfv7l8krsfv7m03p41jakh4xrfm21w85kvghz0q5hq63w9l3f7"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-eros emacs-sesman emacs-queue))
(home-page "https://git.sr.ht/~abcdw/emacs-arei")
(synopsis "Asyncronous Reliable Extensible IDE")
(description "Sleek Guile IDE for Emacs.")
(license license:gpl3+)))
(define-public emacs-geiser (define-public emacs-geiser
(package (package
(name "emacs-geiser") (name "emacs-geiser")
@ -1512,8 +1533,8 @@ libgit2 bindings for Emacs, intended to boost the performance of Magit.")
(define-public emacs-magit (define-public emacs-magit
;; Use this unreleased commit to benefit from a recent improvements with ;; Use this unreleased commit to benefit from a recent improvements with
;; regard to adding git trailers such as "Reviewed-by". ;; regard to adding git trailers such as "Reviewed-by".
(let ((commit "7a1d50347086678217cf90a32dda277b76ea3081") (let ((commit "dda332b2a41569f5fd8c0c2c3c2dab902d48ceb4")
(revision "6")) (revision "7"))
(package (package
(name "emacs-magit") (name "emacs-magit")
(version (git-version "3.3.0" revision commit)) (version (git-version "3.3.0" revision commit))
@ -1525,7 +1546,7 @@ libgit2 bindings for Emacs, intended to boost the performance of Magit.")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1yn3v24w0sx6r8jqw8blfvyjdjfz5xa7c3x8p6xw1lj7b81l8i0l")))) (base32 "14vqfykfzddpfka7s3pmlh3yvbfd1rpjhab4g9dinz9hn48dwb06"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -5590,8 +5611,8 @@ type, for example: packages, buffers, files, etc.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-guix (define-public emacs-guix
(let ((commit "cf5b7a402ea503c3dcda85a86b9a6c6dd01896e0") (let ((commit "455272c5cc72ed4ba5bad13c669f024f51479a58")
(revision "6")) (revision "7"))
(package (package
(name "emacs-guix") (name "emacs-guix")
(version (git-version "0.5.2" revision commit)) (version (git-version "0.5.2" revision commit))
@ -5603,7 +5624,7 @@ type, for example: packages, buffers, files, etc.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0wxiipgv91rlk9bhspx370rykywi52rxg5m1f7680vzs3ckc7nyd")))) "1ihrd7f92p9xidh1mbjk1piykzg46xypnzf1rlxxsymmddlq4jpn"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list

View file

@ -2447,16 +2447,16 @@ system.")
(define-public exomizer (define-public exomizer
(package (package
(name "exomizer") (name "exomizer")
(version "3.1.1") (version "3.1.2")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://bitbucket.org/magli143/exomizer.git") (url "https://bitbucket.org/magli143/exomizer.git")
(commit "6a152b5605648f7a41eadd4b011a93ec92f74dd8"))) (commit version)))
(file-name (string-append name "-" version "-checkout")) (file-name (string-append name "-" version "-checkout"))
(sha256 (sha256
(base32 (base32
"1ynhkb5p2dypkikipc3krzif264l9rmx1wnjzzgw8n88i4zkymzg")))) "04795l75nlbz0g5gp1xx8kiwbrm5pv5pj24ja02cnan6mglj7j0w"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; No target exists `(#:tests? #f ; No target exists

View file

@ -860,25 +860,31 @@ and others.")
(define-public gerbv (define-public gerbv
(package (package
(name "gerbv") (name "gerbv")
(version "2.7.0") (version "2.10.0")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append "mirror://sourceforge/gerbv/gerbv/gerbv-" (uri (git-reference
version "/gerbv-" version ".tar.gz")) (url "https://github.com/gerbv/gerbv")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1d2k43k7i4yvbpi4sw1263a8d0q98z2n7aqhmpinpkih8a681vn5")))) "06bcm5zw7whsnnmfld3gl2j907lxc68gnsbzr2pc4w6qc923rgmj"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '("CFLAGS=-fcommon"))) '(#:configure-flags '("CFLAGS=-fcommon")))
(native-inputs (native-inputs (list autoconf
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. automake
("desktop-file-utils" ,desktop-file-utils) desktop-file-utils
("pkg-config" ,pkg-config))) gettext-minimal
(inputs `(,glib "bin")
`(("cairo" ,cairo) libtool
("gtk" ,gtk+-2))) pkg-config))
(home-page "http://gerbv.geda-project.org/") (inputs (list cairo
;; As of 2.10.0 gerbv is still GTK+2 only. GTK 3/4 porting
;; issue: https://github.com/gerbv/gerbv/issues/71.
gtk+-2))
(home-page "https://gerbv.github.io/")
(synopsis "Gerber file viewer") (synopsis "Gerber file viewer")
(description (description
"Gerbv is a viewer for files in the Gerber format (RS-274X only), which "Gerbv is a viewer for files in the Gerber format (RS-274X only), which
@ -2675,7 +2681,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
(define-public python-scikit-rf (define-public python-scikit-rf
(package (package
(name "python-scikit-rf") (name "python-scikit-rf")
(version "0.29.1") (version "0.30.0")
(source (origin (source (origin
(method git-fetch) ;PyPI misses some files required for tests (method git-fetch) ;PyPI misses some files required for tests
(uri (git-reference (uri (git-reference
@ -2683,7 +2689,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(sha256 (sha256
(base32 (base32
"11pbcgbq34xyjv5gjwi3a8cpgqqwmd73ps1fwyjajl26q2nkmcdh")) "1fbws80glrakd08xzhifna831yk0bd8b0cizhfcjkg4km2nyx65c"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(propagated-inputs (list python-matplotlib (propagated-inputs (list python-matplotlib
@ -2820,7 +2826,7 @@ comments.")))
(define-public freecad (define-public freecad
(package (package
(name "freecad") (name "freecad")
(version "0.21.1") (version "0.21.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2829,7 +2835,7 @@ comments.")))
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0qwh6b1s432j5piwgfkphvz0slmxf0m8m8pdr3ny9zna9mghz42k")))) (base32 "0s720q6vxlh78jzahqp69nl8wagb42l05dym5aqhfnr31dx666hc"))))
(build-system qt-build-system) (build-system qt-build-system)
(native-inputs (native-inputs
(list doxygen (list doxygen

View file

@ -585,7 +585,7 @@ directories.
(native-inputs (native-inputs
(list intltool python-distutils-extra)) (list intltool python-distutils-extra))
(inputs (inputs
(list libtorrent-rasterbar python-dbus python-efl python-pyxdg)) (list libtorrent-rasterbar-1.2 python-dbus python-efl python-pyxdg))
(home-page "https://www.enlightenment.org") (home-page "https://www.enlightenment.org")
(synopsis "EFL Bittorrent client") (synopsis "EFL Bittorrent client")
(description "Epour is a BitTorrent client based on the @dfn{Enlightenment (description "Epour is a BitTorrent client based on the @dfn{Enlightenment

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016, 2023 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015, 2016, 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016-2018, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2016, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au> ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
@ -952,7 +952,9 @@ Bech32 and segwit addresses.")
(when tests? (when tests?
(invoke "pytest" "-v"))))))) (invoke "pytest" "-v")))))))
(propagated-inputs (propagated-inputs
(list python-configargparse (list python-bech32
python-configargparse
python-cryptography
python-daemon python-daemon
python-docutils python-docutils
python-ecdsa python-ecdsa
@ -965,8 +967,6 @@ Bech32 and segwit addresses.")
python-wheel)) python-wheel))
(native-inputs ; Only needed for running the tests (native-inputs ; Only needed for running the tests
(list gnupg (list gnupg
python-bech32
python-cryptography
python-mock python-mock
python-pytest)) python-pytest))
(home-page "https://github.com/romanz/trezor-agent") (home-page "https://github.com/romanz/trezor-agent")

View file

@ -1158,6 +1158,8 @@ such as:
#:make-flags #:make-flags
(let ((triplet-without-vendor (let ((triplet-without-vendor
(and (%current-target-system) (and (%current-target-system)
;; TODO: Is there a use case for allowing this?
(not (target-avr?))
(match (string-split (nix-system->gnu-triplet (match (string-split (nix-system->gnu-triplet
(%current-target-system)) #\-) (%current-target-system)) #\-)
((arch vendor os ..1) ((arch vendor os ..1)
@ -1256,6 +1258,7 @@ OVERRIDE.H, to also override the corresponding layout include file."
(arguments (arguments
(list (list
#:tests? #f ;no test suite #:tests? #f ;no test suite
#:target "avr"
#:make-flags #:make-flags
#~(list (string-append "LAYOUT=" #$layout) #~(list (string-append "LAYOUT=" #$layout)
;; Simplify the output directory name. ;; Simplify the output directory name.
@ -1281,7 +1284,7 @@ OVERRIDE.H, to also override the corresponding layout include file."
(install-file "firmware.hex" #$output) (install-file "firmware.hex" #$output)
(install-file "firmware.eep" #$output) (install-file "firmware.eep" #$output)
(install-file "firmware--layout.html" #$output))))))) (install-file "firmware--layout.html" #$output)))))))
(native-inputs (list (make-avr-toolchain) python)) (native-inputs (list python))
(home-page "https://www.ergodox.io") (home-page "https://www.ergodox.io")
(synopsis "Firmware for the ErgoDox keyboard") (synopsis "Firmware for the ErgoDox keyboard")
(description (format #f "This package contains the original firmware for (description (format #f "This package contains the original firmware for
@ -1343,9 +1346,7 @@ corresponding layout." layout))
`("PATH" prefix `("PATH" prefix
,(map (compose dirname ,(map (compose dirname
(cut search-input-file inputs <>)) (cut search-input-file inputs <>))
'("bin/avr-ar" '("bin/avrdude"
"bin/avr-gcc"
"bin/avrdude"
"bin/awk" "bin/awk"
"bin/cmp" "bin/cmp"
"bin/dfu-programmer" "bin/dfu-programmer"
@ -1358,16 +1359,13 @@ corresponding layout." layout))
;; TODO: Remove after git is wrapped with these. ;; TODO: Remove after git is wrapped with these.
"bin/basename" "bin/basename"
"bin/sed" "bin/sed"
"bin/uname"))) "bin/uname")))))))))
`("CROSS_C_INCLUDE_PATH" = (,(getenv "CROSS_C_INCLUDE_PATH")))
`("CROSS_LIBRARY_PATH" = (,(getenv "CROSS_LIBRARY_PATH")))))))))
;; The inputs are not propagated since qmk is to be used strictly as a ;; The inputs are not propagated since qmk is to be used strictly as a
;; command. ;; command.
(inputs (inputs
;; The 'qmk setup' command advises to use GCC at version 8, and there are ;; The 'qmk setup' command advises to use GCC at version 8, and there are
;; compilation errors in some firmware otherwise. ;; compilation errors in some firmware otherwise.
(list (make-avr-toolchain #:xgcc gcc-8) (list avrdude
avrdude
bash-minimal bash-minimal
dfu-programmer dfu-programmer
dfu-util dfu-util
@ -1440,6 +1438,7 @@ provided."
(ice-9 ftw) (ice-9 ftw)
(ice-9 match) (ice-9 match)
(srfi srfi-26)) (srfi srfi-26))
#:target "avr"
;; XXX: Running a test target like "test:$keyboard" doesn't seem to run ;; XXX: Running a test target like "test:$keyboard" doesn't seem to run
;; anything and causes the .hex file to be regenerated; leave the tests ;; anything and causes the .hex file to be regenerated; leave the tests
;; out for now. ;; out for now.

View file

@ -109,8 +109,10 @@
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages qt) #:use-module (gnu packages qt)
#:use-module (gnu packages sdl) #:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages speech) #:use-module (gnu packages speech)
#:use-module (gnu packages sphinx) #:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages stb) #:use-module (gnu packages stb)
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils) #:use-module (gnu packages textutils)
@ -1841,38 +1843,37 @@ of use.")
(define-public openmw (define-public openmw
(package (package
(name "openmw") (name "openmw")
(version "0.47.0") (version "0.48.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/OpenMW/openmw") (url "https://github.com/OpenMW/openmw")
(commit (string-append "openmw-" version)))) (commit (string-append "openmw-" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0amkxfylk1l67d2igihnhhql62xr89wvg1sxbq2rnhczf6vxaj6f"))))
"19mcbnjl4279qalb97msf965bjax48mx1r1qczyvwhn28h6n3bsy"))
(patches (search-patches "openmw-assume-nonconst-SIGSTKSZ.patch"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ; No test target `(#:tests? #f ;No test target
#:configure-flags #:configure-flags (list "-DDESIRED_QT_VERSION=5"
(list "-DDESIRED_QT_VERSION=5" "-DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON")))
"-DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON"))) (native-inputs (list boost doxygen pkg-config))
(native-inputs (inputs (list bullet
(list boost doxygen pkg-config)) ffmpeg
(inputs libxt
(list bullet lz4
ffmpeg-4 ; https://gitlab.com/OpenMW/openmw/-/issues/6631 mygui-gl ;OpenMW does not need Ogre.
libxt openal
lz4 openmw-openscenegraph
mygui-gl ; OpenMW does not need Ogre. qtbase-5
openal recastnavigation
openmw-openscenegraph sdl2
qtbase-5 unshield
recastnavigation icu4c
sdl2 yaml-cpp
unshield)) luajit
sqlite))
(synopsis "Re-implementation of the RPG Morrowind engine") (synopsis "Re-implementation of the RPG Morrowind engine")
(description (description
"OpenMW is a game engine which reimplements and extends the one that runs "OpenMW is a game engine which reimplements and extends the one that runs

View file

@ -1970,7 +1970,8 @@ to the OSM opening hours specification.")
java-openjfx-media java-openjfx-media
java-parsson ; runtime dependency java-parsson ; runtime dependency
java-signpost-core java-signpost-core
java-svg-salamander)) java-svg-salamander
openjdk11))
(arguments (arguments
`(#:tests? #f `(#:tests? #f
#:jar-name "josm.jar" #:jar-name "josm.jar"
@ -2070,9 +2071,16 @@ to the OSM opening hours specification.")
(lambda _ (lambda _
(display (display
(string-append "#!/bin/sh\n" (string-append "#!/bin/sh\n"
(assoc-ref inputs "jdk") "/bin/java" (assoc-ref inputs "openjdk") "/bin/java"
" -cp " out "/share/java/josm.jar:" " -cp " out "/share/java/josm.jar:"
(getenv "CLASSPATH") ;; CLASSPATH, but remove native inputs
(string-join
(filter
(lambda (jar)
(and (not (string-contains jar "-jdk/"))
(not (string-contains jar "-javacc-"))))
(string-split (getenv "CLASSPATH") #\:))
":")
" org.openstreetmap.josm.gui.MainApplication")))) " org.openstreetmap.josm.gui.MainApplication"))))
(chmod (string-append bin "/josm") #o755)) (chmod (string-append bin "/josm") #o755))
#t))))) #t)))))

View file

@ -51,7 +51,7 @@
;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Naga Malleswari <nagamalli@riseup.net> ;;; Copyright © 2020 Naga Malleswari <nagamalli@riseup.net>
;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com> ;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2020, 2021, 2022 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020, 2021, 2022, 2023 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
@ -1894,7 +1894,7 @@ either on a local, or remote machine via a number of methods.")
(define-public gnome-commander (define-public gnome-commander
(package (package
(name "gnome-commander") (name "gnome-commander")
(version "1.14.3") (version "1.16.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1902,8 +1902,10 @@ either on a local, or remote machine via a number of methods.")
(version-major+minor version) "/" (version-major+minor version) "/"
"gnome-commander-" version ".tar.xz")) "gnome-commander-" version ".tar.xz"))
(sha256 (sha256
(base32 "0yzx9slg632iflw9p96nlh9i50dhacq7hrzpkj8b48mr1zkxrn3q")))) (base32 "1cyh20nz2f81rb6di99idvw4xjn969mjhj3n2q17kzjhlv20079z"))))
(build-system glib-or-gtk-build-system) (build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t))
(native-inputs (native-inputs
(list desktop-file-utils (list desktop-file-utils
flex flex
@ -1911,6 +1913,7 @@ either on a local, or remote machine via a number of methods.")
`(,glib "bin") `(,glib "bin")
gobject-introspection gobject-introspection
googletest googletest
`(,gtk+-2 "bin")
intltool intltool
itstool itstool
libtool libtool
@ -3583,11 +3586,19 @@ for dealing with different structured file formats.")
;; https://gitlab.gnome.org/GNOME/librsvg/-/issues/955). ;; https://gitlab.gnome.org/GNOME/librsvg/-/issues/955).
(substitute* "gdk-pixbuf-loader/librsvg.thumbnailer.in" (substitute* "gdk-pixbuf-loader/librsvg.thumbnailer.in"
(("@bindir@/gdk-pixbuf-thumbnailer") (("@bindir@/gdk-pixbuf-thumbnailer")
(search-input-file inputs "bin/gdk-pixbuf-thumbnailer"))))) (string-append #$(this-package-input "gdk-pixbuf")
"/bin/gdk-pixbuf-thumbnailer")))))
(add-after 'unpack 'prepare-for-build (add-after 'unpack 'prepare-for-build
(lambda _ (lambda _
;; In lieu of #:make-flags ;; In lieu of #:make-flags
(setenv "CC" #$(cc-for-target)) (setenv "CC" #$(cc-for-target))
(setenv "PKG_CONFIG" #$(pkg-config-for-target))
(when #$(%current-target-system)
(setenv "RUST_TARGET"
(string-replace
#$(%current-target-system)
"-unknown-linux-gnu"
(string-index #$(%current-target-system) #\-))))
;; Something about the build environment resists building ;; Something about the build environment resists building
;; successfully with the '--locked' flag. ;; successfully with the '--locked' flag.
(substitute* '("Makefile.am" "Makefile.in") (substitute* '("Makefile.am" "Makefile.in")
@ -3620,9 +3631,18 @@ for dealing with different structured file formats.")
(apply (assoc-ref gnu:%standard-phases 'configure) (apply (assoc-ref gnu:%standard-phases 'configure)
#:configure-flags #:configure-flags
(list "--disable-static" (list "--disable-static"
"--enable-vala" #$@(if (%current-target-system)
(string-append "--with-html-dir=" #$output #~(;; g-ir-scanner can't import its modules
"/share/gtk-doc/html")) ;; and vala currently can't be cross-compiled.
"--enable-introspection=no"
"--enable-vala=no"
;; These two are necessary for cross-compiling.
(string-append
"--build=" #$(nix-system->gnu-triplet
(%current-system)))
(string-append
"--host=" #$(%current-target-system)))
#~("--enable-vala")))
args))) args)))
(add-after 'configure 'dont-vendor-self (add-after 'configure 'dont-vendor-self
(lambda* (#:key vendor-dir #:allow-other-keys) (lambda* (#:key vendor-dir #:allow-other-keys)
@ -3632,13 +3652,14 @@ for dealing with different structured file formats.")
(replace 'build (replace 'build
(assoc-ref gnu:%standard-phases 'build)) (assoc-ref gnu:%standard-phases 'build))
(replace 'check (replace 'check
(lambda* args (lambda* (#:key tests? #:allow-other-keys #:rest args)
((assoc-ref gnu:%standard-phases 'check) (when tests?
#:test-target "check"))) ((assoc-ref gnu:%standard-phases 'check)
#:test-target "check"))))
(replace 'install (replace 'install
(assoc-ref gnu:%standard-phases 'install))))) (assoc-ref gnu:%standard-phases 'install)))))
(native-inputs (list `(,glib "bin") gobject-introspection pkg-config vala)) (native-inputs (list gdk-pixbuf `(,glib "bin") gobject-introspection pkg-config vala))
(inputs (list freetype harfbuzz libxml2 pango)) (inputs (list freetype gobject-introspection harfbuzz libxml2 pango))
(propagated-inputs (list cairo gdk-pixbuf glib)) (propagated-inputs (list cairo gdk-pixbuf glib))
(synopsis "SVG rendering library") (synopsis "SVG rendering library")
(description "Librsvg is a library to render SVG images to Cairo surfaces. (description "Librsvg is a library to render SVG images to Cairo surfaces.
@ -5917,7 +5938,7 @@ services for numerous locations.")
gi-docgen gi-docgen
`(,glib "bin") ;for glib-mkenums `(,glib "bin") ;for glib-mkenums
gobject-introspection gobject-introspection
glibc-utf8-locales (libc-utf8-locales-for-target)
gsettings-desktop-schemas gsettings-desktop-schemas
pkg-config pkg-config
python python
@ -8747,8 +8768,25 @@ the available networks and allows users to easily switch between them.")
library.") library.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
;; This is the last release providing the 2.6 API, hence the name.
;; This is needed by tascam-gtk ;; This is needed by tascam-gtk
(define-public libxml++-3
(package
(inherit libxml++)
(name "libxml++")
(version "3.2.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libxmlplusplus/libxmlplusplus")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "07f6l9ka63dnc85npxq5g7bn1ja7lad0w2wixqdlyabdvc4l2hp5"))))
(propagated-inputs (modify-inputs (package-propagated-inputs libxml++)
(append glibmm-2.64)))))
;; This is the last release providing the 2.6 API, hence the name.
(define-public libxml++-2 (define-public libxml++-2
(package (package
(inherit libxml++) (inherit libxml++)
@ -9471,7 +9509,7 @@ easy, safe, and automatic.")
(native-inputs (native-inputs
(list gettext-minimal (list gettext-minimal
`(,glib "bin") `(,glib "bin")
glibc-utf8-locales (libc-utf8-locales-for-target)
gobject-introspection gobject-introspection
docbook-xsl docbook-xsl
docbook-xml docbook-xml

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2012-2021, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015, 2018 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2015, 2018 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2014, 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014, 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016, 2020 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2016, 2020 Mark H Weaver <mhw@netris.org>
@ -130,11 +130,10 @@
(symlink (string-append "lock-obj-pub." triplet ".h") (symlink (string-append "lock-obj-pub." triplet ".h")
(string-append "src/syscfg/lock-obj-pub." (string-append "src/syscfg/lock-obj-pub."
source ".h"))) source ".h")))
#$(let* ((target (%current-target-system)) #$(let ((target (%current-target-system)))
(architecture
(string-take target (string-index target #\-))))
(cond ((target-linux? target) (cond ((target-linux? target)
(match architecture (match (string-take target
(string-index target #\-))
("armhf" ("armhf"
`(link "arm-unknown-linux-gnueabi" "linux-gnu")) `(link "arm-unknown-linux-gnueabi" "linux-gnu"))
("mips64el" ("mips64el"

View file

@ -5617,7 +5617,8 @@ values.")
(patches (search-patches "go-gopkg-in-yaml-v3-32bit.patch")))) (patches (search-patches "go-gopkg-in-yaml-v3-32bit.patch"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "gopkg.in/yaml.v3")) `(#:tests? ,(not (target-ppc32?)) ; Test killed with quit: ran too long (11m0s).
#:import-path "gopkg.in/yaml.v3"))
(native-inputs (native-inputs
(list go-gopkg-in-check-v1)) (list go-gopkg-in-check-v1))
(home-page "https://gopkg.in/yaml.v3") (home-page "https://gopkg.in/yaml.v3")
@ -8324,7 +8325,15 @@ colorized or SGR defined output to the standard output.")
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "github.com/google/go-cmp/cmp" '(#:import-path "github.com/google/go-cmp/cmp"
#:unpack-path "github.com/google/go-cmp")) #:unpack-path "github.com/google/go-cmp"
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs #:allow-other-keys #:rest args)
(unless
;; The tests fail when run with gccgo.
(false-if-exception (search-input-file inputs "/bin/gccgo"))
(apply (assoc-ref %standard-phases 'check) args)))))))
(synopsis "Determine equality of values in Go") (synopsis "Determine equality of values in Go")
(description (description
"This package is intended to be a more powerful and safer "This package is intended to be a more powerful and safer
@ -8559,6 +8568,17 @@ with gotest-tools.")))
(define-public go-gotest-tools-internal-source (define-public go-gotest-tools-internal-source
(package (inherit (go-gotest-tools-package "internal/source")) (package (inherit (go-gotest-tools-package "internal/source"))
(arguments
(substitute-keyword-arguments
(package-arguments (go-gotest-tools-package "internal/source"))
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
(replace 'check
(lambda* (#:key inputs #:allow-other-keys #:rest args)
(unless
;; failed to parse source file: : open : no such file or directory
(false-if-exception (search-input-file inputs "/bin/gccgo"))
(apply (assoc-ref %standard-phases 'check) args))))))))
(native-inputs (native-inputs
(list go-github-com-pkg-errors go-github-com-google-go-cmp-cmp)) (list go-github-com-pkg-errors go-github-com-google-go-cmp-cmp))
(synopsis "Source code AST formatters for gotest-tools") (synopsis "Source code AST formatters for gotest-tools")
@ -12816,7 +12836,7 @@ is undetermined, a customizable spinner is shown.")
(define-public go-git-sr-ht-emersion-gqlclient (define-public go-git-sr-ht-emersion-gqlclient
(package (package
(name "go-git-sr-ht-emersion-gqlclient") (name "go-git-sr-ht-emersion-gqlclient")
(version "0.0.0-20220202181617-4e6e9c763dd2") (version "0.0.0-20230820050442-8873fe0204b9")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -12825,7 +12845,7 @@ is undetermined, a customizable spinner is shown.")
(commit (go-version->git-ref version)))) (commit (go-version->git-ref version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1d9hmaz7yy02bk455gmaav818xi49sw69jyx6dxzymv6ln7r1cv1")))) (base32 "0x64kcryawdr0daq1w6fada60zqrddw75yi397835b9ij7wb5gmh"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (list #:import-path "git.sr.ht/~emersion/gqlclient")) (arguments (list #:import-path "git.sr.ht/~emersion/gqlclient"))
(home-page "https://git.sr.ht/~emersion/gqlclient") (home-page "https://git.sr.ht/~emersion/gqlclient")

View file

@ -139,7 +139,7 @@ between two other data points.")
(define-public gama (define-public gama
(package (package
(name "gama") (name "gama")
(version "2.26") (version "2.27")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -147,7 +147,7 @@ between two other data points.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1mn7ma8w4spqc0p4slp1s14q45z7hzyp49ikvd1spsz9jqz8ycpk")) "0h9kwgzz9ijzx6jcpc37qhadc41k1jdcv0s2wcpsz6zjmx63p2wk"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin

View file

@ -10,6 +10,7 @@
;;; Copyright © 2021 Alexandre Hannud Abdo <abdo@member.fsf.org> ;;; Copyright © 2021 Alexandre Hannud Abdo <abdo@member.fsf.org>
;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 David Elsing <david.elsing@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -40,13 +41,18 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bioconductor) #:use-module (gnu packages bioconductor)
#:use-module (gnu packages bioinformatics) #:use-module (gnu packages bioinformatics)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages c)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages cran) #:use-module (gnu packages cran)
#:use-module (gnu packages datastructures) #:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
#:use-module (gnu packages flex)
#:use-module (gnu packages gd) #:use-module (gnu packages gd)
#:use-module (gnu packages graphics) #:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
@ -55,6 +61,7 @@
#:use-module (gnu packages multiprecision) #:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages python-build) #:use-module (gnu packages python-build)
#:use-module (gnu packages python-compression) #:use-module (gnu packages python-compression)
@ -93,49 +100,102 @@ distributions in empirical data. SIAM Review 51, 661-703 (2009)}).")
(define-public igraph (define-public igraph
(package (package
(name "igraph") (name "igraph")
(version "0.10.4") (version "0.10.7")
(source (source
(origin (origin
(method url-fetch) (method git-fetch)
(uri (string-append "https://github.com/igraph/igraph/releases/" (uri (git-reference
"download/" version "/igraph-" version ".tar.gz")) (url "https://github.com/igraph/igraph")
(commit version)))
(file-name (git-file-name name version))
(patches (search-patches "igraph-fix-varargs-integer-size.patch"))
(modules '((guix build utils) (modules '((guix build utils)
(ice-9 ftw) (ice-9 ftw)
(srfi srfi-26))) (srfi srfi-26)))
(snippet '(begin (snippet '(begin
;; igraph insists on building its own copy of CxSparse
;; (see: https://github.com/igraph/igraph/commit/\ (delete-file-recursively "vendor")
;; 334318b7dfe46501236272ca336580f4748114b0) and the build (delete-file-recursively "src/isomorphism/bliss")
;; has no support to use a system provided 'pcg'.
(define keep-libraries '("cs" "pcg"))
(define keep (append '("." ".." "CMakeLists.txt")
keep-libraries))
(define keep? (cut member <> keep))
(with-directory-excursion "vendor"
(for-each delete-file-recursively
(scandir "." (negate keep?))))
(call-with-output-file "vendor/CMakeLists.txt"
(cut format <> "~{add_subdirectory(~a)~%~}"
keep-libraries))
(substitute* '("src/CMakeLists.txt" (substitute* '("src/CMakeLists.txt"
"etc/cmake/benchmark_helpers.cmake") "etc/cmake/benchmark_helpers.cmake")
;; Remove extraneous bundling related variables. ;; Remove extraneous bundling related variables.
((".*_IS_VENDORED.*") ((".*_IS_VENDORED.*") "")
"")))) ((".*add_sub.*isomorphism/bliss.*") "")
(("(.*TARGETS.*)bliss(.*)cxsparse_vendored(.*)pcg(.*)"
_ part1 part2 part3 part4)
(string-append part1 part2 part3 part4))
(("cxsparse_vendored") "cxsparse")
((" pcg ") " pcg_random "))
(substitute* "CMakeLists.txt"
(("add_sub.*vendor.*") ""))))
(sha256 (sha256
(base32 "1z1ay3l1h64jc2igbl2ibvi20sswy56v2yk3ykhis7jzijsh0mxa")))) (base32
"025f9c2jsawniqkig4l5z3v9aw3ipazmnlsf80b653mns5bvj1yn"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON") (arguments
#:test-target "check")) (list
(native-inputs (list pkg-config)) #:configure-flags
#~(list "-DBUILD_SHARED_LIBS=ON"
;; Use the same integer width as suitesparse-cxsparse, which
;; uses int64_t in SuiteSparse v6.0.0 and later.
"-DIGRAPH_INTEGER_SIZE=64")
#:test-target "check"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'version-file
(lambda _
(let ((port (open-file "IGRAPH_VERSION" "w")))
(display #$version port)
(close port))))
(add-after 'unpack 'patch-suitesparse
(lambda _
(substitute* '("src/core/sparsemat.c"
"include/igraph_sparsemat.h")
(("<cs/cs\\.h>") "<cs.h>")
(("cs_igraph") "cs_dl")
(("__BEGIN_DECLS.*" all)
(string-append all "\n#define CS_LONG\n")))))
(add-after 'unpack 'patch-pcg
(lambda _
(substitute* '("src/random/rng_pcg32.c"
"src/random/rng_pcg64.c")
(("#include \"pcg/(.*)\"" _ name)
(string-append "#include <" name ">")))))
(add-after 'unpack 'patch-bliss
(lambda _
(substitute* "src/isomorphism/bliss.cc"
(("#include \"bliss.*")
(string-append
"#include <bliss/graph.hh>\n"
"#include <bliss/digraph.hh>\n")))))
(add-after 'build 'build-doc
(lambda _
(invoke "cmake" "--build" "." "--target" "html")))
(add-after 'install 'install-doc
(lambda _
(copy-recursively
"doc/html"
(string-append #$output "/share/doc/"
#$name "-" #$version "/html")))))))
(native-inputs
(list bison
docbook-xml-4.3
docbook-xsl
flex
pcg-c
pkg-config
;; For the HTML documentation.
python
source-highlight
xmlto))
(inputs (inputs
(list arpack-ng (list arpack-ng
gmp bliss
glpk glpk
libxml2
lapack lapack
openblas openblas
plfit)) plfit
suitesparse-cxsparse))
;; libxml2 is in the 'Requires.private' of igraph.pc. ;; libxml2 is in the 'Requires.private' of igraph.pc.
(propagated-inputs (list libxml2)) (propagated-inputs (list libxml2))
(home-page "https://igraph.org") (home-page "https://igraph.org")

View file

@ -1490,11 +1490,11 @@ in Julia).")
(define-public openmw-openscenegraph (define-public openmw-openscenegraph
;; OpenMW prefers its own fork of openscenegraph: ;; OpenMW prefers its own fork of openscenegraph:
;; https://wiki.openmw.org/index.php?title=Development_Environment_Setup#OpenSceneGraph. ;; https://wiki.openmw.org/index.php?title=Development_Environment_Setup#OpenSceneGraph.
(let ((commit "69cfecebfb6dc703b42e8de39eed750a84a87489")) (let ((commit "68c5c573d47766507bfb191e0c8d213b1997ad20"))
(hidden-package (hidden-package
(package (package
(inherit openscenegraph) (inherit openscenegraph)
(version (git-version "3.6" "2" commit)) (version (git-version "3.6" "3" commit))
(outputs (list "out")) (outputs (list "out"))
(source (source
(origin (origin
@ -1505,7 +1505,7 @@ in Julia).")
(file-name (git-file-name (package-name openscenegraph) version)) (file-name (git-file-name (package-name openscenegraph) version))
(sha256 (sha256
(base32 (base32
"1qayk2gklm8zvss90dcjfxv6717rvcmwmgmgyy1qzkli67a0zbw2")))) "12xgdmymjh4rb7djzniy15lvi45y0x4i0l5swf031r8g4zn72v2n"))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments openscenegraph) (substitute-keyword-arguments (package-arguments openscenegraph)
((#:configure-flags flags) ((#:configure-flags flags)

View file

@ -806,7 +806,8 @@ ever use this library.")
;; The CI test suite fails completely on powerpc-linux. ;; The CI test suite fails completely on powerpc-linux.
;; The name org.gnome.SessionManager was not provided by any .service ;; The name org.gnome.SessionManager was not provided by any .service
;; TODO: Wrap 'check phase with 'tests?'. ;; TODO: Wrap 'check phase with 'tests?'.
#$@(if (not (target-ppc32?)) #$@(if (not (or (target-ppc32?)
(%current-target-system)))
#~((add-after 'install 'check #~((add-after 'install 'check
(lambda _ (lambda _
;; xfconfd requires a writable HOME ;; xfconfd requires a writable HOME

View file

@ -1103,6 +1103,35 @@ for calling methods on remote servers by exchanging JSON objects.")
(home-page "https://codeberg.org/rgherdt/scheme-json-rpc/") (home-page "https://codeberg.org/rgherdt/scheme-json-rpc/")
(license license:expat))) (license license:expat)))
(define-public guile-ares-rs
(package
(name "guile-ares-rs")
(version "0.9.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~abcdw/guile-ares-rs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0jl4k54ydi1qxdvif4di0ri5jznlfc2gg1qhs94bhk4y22k0gp8c"))))
(build-system guile-build-system)
(arguments
(list
#:source-directory "src"))
;; Remove guile-next dependency, when guile package get custom text port
(inputs `(("guile" ,guile-next)))
(propagated-inputs (list guile-fibers))
(home-page "https://git.sr.ht/~abcdw/guile-ares-rs")
(synopsis "Asyncronous Reliable Extensible Sleek RPC Server for Guile")
(description "Asynchronous Reliable Extensible Sleek RPC Server for
Guile. It's based on nREPL protocol and can be used for programmable
interactions with a running guile processes, for implementing REPLs, IDEs,
test runners or other tools.")
(license license:gpl3+)))
(define-public guile-squee (define-public guile-squee
(let ((commit "9f2609563fc53466e46d37c8d8d2fbcfce67b2ba") (let ((commit "9f2609563fc53466e46d37c8d8d2fbcfce67b2ba")
(revision "5")) (revision "5"))
@ -3326,7 +3355,7 @@ from @code{tree-il}.")
(define-public guile-hoot (define-public guile-hoot
(package (package
(name "guile-hoot") (name "guile-hoot")
(version "0.1.0") (version "0.2.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://spritely.institute/files/releases" (uri (string-append "https://spritely.institute/files/releases"
@ -3334,7 +3363,7 @@ from @code{tree-il}.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1087rcj22hk6fcbqajm268f1q2c3kbizah8wy1z0aqkfliwc309g")))) "1byshh7092q2yzqwpi59j4xjsppvp1xqnqsv94yv541qfm0plnc2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0" '(#:make-flags '("GUILE_AUTO_COMPILE=0"
@ -5408,49 +5437,41 @@ high-level API for network management that uses rtnetlink.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (string-append name "-" version)) (file-name (string-append name "-" version))
(sha256 (sha256
(base32 (base32 "0srkmchd4kmfa7q65r6fdzwklhgdlck1ll0s7smzs8ddjdgz2lwm"))))
"0srkmchd4kmfa7q65r6fdzwklhgdlck1ll0s7smzs8ddjdgz2lwm"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings `(#:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings
#:modules (((guix build guile-build-system) #:modules (((guix build guile-build-system)
#:select (target-guile-effective-version)) #:select (target-guile-effective-version))
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
#:imported-modules ((guix build guile-build-system) #:imported-modules ((guix build guile-build-system)
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
#:phases #:phases (modify-phases %standard-phases
(modify-phases %standard-phases (add-after 'install 'wrap-program
(add-after 'install 'wrap-program (lambda* (#:key inputs outputs #:allow-other-keys)
(lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out"))
(let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))
(bin (string-append out "/bin")) (guile-lib (assoc-ref inputs "guile2.2-lib"))
(guile-lib (assoc-ref inputs "guile-lib")) (json (assoc-ref inputs "guile2.2-json"))
(json (assoc-ref inputs "guile-json")) (tls (assoc-ref inputs "guile2.2-gnutls"))
(tls (assoc-ref inputs "guile-gnutls")) (version (target-guile-effective-version))
(version (target-guile-effective-version)) (scm (string-append "/share/guile/site/" version))
(scm (string-append "/share/guile/site/" (go (string-append "/lib/guile/" version
version)) "/site-ccache")))
(go (string-append "/lib/guile/" (wrap-program (string-append bin "/gitlab-cli")
version "/site-ccache"))) `("GUILE_LOAD_PATH" prefix
(wrap-program (string-append bin "/gitlab-cli") (,(string-append out scm) ,(string-append
`("GUILE_LOAD_PATH" prefix guile-lib scm)
(,(string-append out scm) ,(string-append json scm)
,(string-append guile-lib scm) ,(string-append tls scm)))
,(string-append json scm) `("GUILE_LOAD_COMPILED_PATH" prefix
,(string-append tls scm))) (,(string-append out go) ,(string-append guile-lib
`("GUILE_LOAD_COMPILED_PATH" prefix go)
(,(string-append out go) ,(string-append json go)
,(string-append guile-lib go) ,(string-append tls go))))))))))
,(string-append json go) (native-inputs (list autoconf automake pkg-config texinfo))
,(string-append tls go)))))))))) (inputs (list bash-minimal guile-2.2 guile2.2-json guile2.2-lib
(native-inputs guile2.2-gnutls))
(list autoconf automake pkg-config texinfo))
(inputs
`(("bash" ,bash-minimal)
("guile" ,guile-2.2)
("guile-json" ,guile2.2-json)
("guile-lib" ,guile2.2-lib)
("guile-gnutls" ,guile2.2-gnutls)))
(home-page "https://github.com/artyom-poptsov/guile-gitlab") (home-page "https://github.com/artyom-poptsov/guile-gitlab")
(synopsis "Guile interface to GitLab") (synopsis "Guile interface to GitLab")
(description (description
@ -5462,7 +5483,7 @@ GitLab instance.")
(define-public guile-smc (define-public guile-smc
(package (package
(name "guile-smc") (name "guile-smc")
(version "0.6.2") (version "0.6.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -5472,7 +5493,7 @@ GitLab instance.")
(file-name (string-append name "-" version)) (file-name (string-append name "-" version))
(sha256 (sha256
(base32 (base32
"11083lj048ab5zsdgwpkshxi8v5nfdr7kvmmslszbi7lq2pwfqig")))) "1gjwz1l2ls4xkkgg4d2vw3a1klc4var03ab4k6lq1jifdvc8n51f"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings `(#:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings

View file

@ -457,7 +457,7 @@ without requiring the source code to be rewritten.")
(define-public guile-next (define-public guile-next
(let ((version "3.0.9") (let ((version "3.0.9")
(revision "0") (revision "0")
(commit "79e836b8cc601a1259c934000a953a8d739ddd6f")) (commit "d8df317bafcdd9fcfebb636433c4871f2fab28b2"))
(package (package
(inherit guile-3.0) (inherit guile-3.0)
(name "guile-next") (name "guile-next")
@ -471,7 +471,7 @@ without requiring the source code to be rewritten.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0s90khsdbvrkykp58izkvyxf8jciggdapm29dc3lzk3s1shajlgm")))) "0g294vnc5xkaq5vqh9hkh793mybkr17yqwh0fc46alnwxgpgjy5n"))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments guile-3.0) (substitute-keyword-arguments (package-arguments guile-3.0)
((#:phases phases '%standard-phases) ((#:phases phases '%standard-phases)

View file

@ -481,15 +481,23 @@ RGB animations.")
(define-public ddcutil (define-public ddcutil
(package (package
(name "ddcutil") (name "ddcutil")
(version "1.4.2") (version "1.4.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.ddcutil.com/tarballs/" (uri (string-append "https://www.ddcutil.com/tarballs/"
"ddcutil-" version ".tar.gz")) "ddcutil-" version ".tar.gz"))
(sha256 (sha256
(base32 "015l13j7fp9fmlc5d7m6nfjbzjbp8vc0g5py35ljw7li2xk16v60")))) (base32 "17zrqdz5mzwyccvc5m166yjlbbg9k2m9cwyg0y30h3184p1b2wlq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-missing-pkgconfig-file
(lambda _
(install-file "ddcutil.pc"
(string-append #$output "/lib/pkgconfig")))))))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(inputs (inputs

View file

@ -1690,7 +1690,13 @@ purposes.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1bm0wdv5p26i8nl4kx3145cz553v401sgbpgc96sddzjfmfiydcw")))) (base32 "1bm0wdv5p26i8nl4kx3145cz553v401sgbpgc96sddzjfmfiydcw"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "imgviz/draw.py"
(("collections\\.Iterable") "collections.abc.Iterable"))
(substitute* "imgviz/tile.py"
(("collections\\.Sequence") "collections.abc.Sequence"))))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases

View file

@ -2311,7 +2311,9 @@ distribution.")))
(string-append target new-name)))) (string-append target new-name))))
(find-files "netbeans" "\\.so$")))))))) (find-files "netbeans" "\\.so$"))))))))
(propagated-inputs (propagated-inputs
(list java-openjfx-base java-swt)) (list java-openjfx-base))
(inputs
(list java-swt))
;; XXX: for unknown reasons ;; XXX: for unknown reasons
;; modules/graphics/src/main/native-prism-sw/JNativeSurface.c is missing ;; modules/graphics/src/main/native-prism-sw/JNativeSurface.c is missing
;; in this revision. ;; in this revision.
@ -2465,8 +2467,7 @@ debugging, etc.")
(modules '((guix build utils))) (modules '((guix build utils)))
;; Delete bundled jars. ;; Delete bundled jars.
(snippet '(begin (for-each delete-file-recursively (snippet '(begin (for-each delete-file-recursively
'("bootstrap" "lib")) '("bootstrap" "lib"))))))
#t))))
(arguments (arguments
`(#:make-flags ; bootstrap from javacc-4 `(#:make-flags ; bootstrap from javacc-4
,#~(list (string-append "-Dbootstrap-jar=" ,#~(list (string-append "-Dbootstrap-jar="
@ -2487,17 +2488,16 @@ debugging, etc.")
(lambda _ (lambda _
(display (display
(string-append "#!/bin/sh\n" (string-append "#!/bin/sh\n"
(assoc-ref inputs "jdk") "/bin/java" (assoc-ref inputs "icedtea") "/bin/java"
" -cp " dir "/javacc.jar" " `basename $0`" " $*")))) " -cp " dir "/javacc.jar" " `basename $0`" " $*"))))
(chmod javacc #o755) (chmod javacc #o755)
;; symlink to different names to affect the first argument and ;; symlink to different names to affect the first argument and
;; change the behavior of the jar file. ;; change the behavior of the jar file.
(symlink javacc (string-append bin "/jjdoc")) (symlink javacc (string-append bin "/jjdoc"))
(symlink javacc (string-append bin "/jjtree")) (symlink javacc (string-append bin "/jjtree"))))))))
#t))))))
(native-inputs (native-inputs
(list javacc-4)))) (list javacc-4))
(inputs (list icedtea-8))))
(define-public java-ecj (define-public java-ecj
(package (package

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017, 2019, 2020, 2022 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2019, 2020, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017-2020, 2022, 2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017-2020, 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
@ -184,7 +184,7 @@ context menu in TypeScript.")
#t)))) #t))))
(native-inputs (native-inputs
`(("font-mathjax" ,font-mathjax) `(("font-mathjax" ,font-mathjax)
("glibc-utf8-locales" ,glibc-utf8-locales) ("glibc-utf8-locales" ,(libc-utf8-locales-for-target))
("uglifyjs" ,node-uglify-js) ("uglifyjs" ,node-uglify-js)
,@(package-native-inputs font-mathjax))) ,@(package-native-inputs font-mathjax)))
(synopsis "JavaScript display engine for LaTeX, MathML, and AsciiMath") (synopsis "JavaScript display engine for LaTeX, MathML, and AsciiMath")
@ -618,6 +618,21 @@ Javascript library, adding sorting, paging and filtering abilities to plain
HTML tables with minimal effort.") HTML tables with minimal effort.")
(license license:expat))) (license license:expat)))
(define-public js-datatables-1.9
(package
(inherit js-datatables)
(name "js-datatables")
(version "1.9.4")
(source (origin
(method url-fetch)
(uri (string-append "https://datatables.net/releases/DataTables-"
version ".zip"))
(sha256
(base32
"0yd6548cbpb4hlpwybjp93b9m084n5rba6v1x5n83y0dvlxcd06g"))))
(arguments
(list #:javascript-files '(list "media/js/jquery.dataTables.js")))))
(define-public js-requirejs (define-public js-requirejs
(package (package
(name "js-requirejs") (name "js-requirejs")

View file

@ -265,6 +265,28 @@ appropriate BLAS or optimised Julia linear algebra routines. This supports a
much wider class of matrix types than Julia's in-built @code{StridedArray}.") much wider class of matrix types than Julia's in-built @code{StridedArray}.")
(license license:expat))) (license license:expat)))
(define-public julia-astrolib
(package
(name "julia-astrolib")
(version "0.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaAstro/AstroLib.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1zbivs79cw7qazrl9c8rz2n2kifxw3adwjf22nn24dp5i34fkw5d"))))
(build-system julia-build-system)
(native-inputs (list julia-staticarrays))
(home-page "https://github.com/JuliaAstro/AstroLib.jl")
(synopsis "Bundle of small astronomical and astrophysical routines")
(description "The aim of this package is to provide users with a set of small
generic routines useful above all in astronomical and astrophysical context,
written in Julia.")
(license license:expat)))
(define-public julia-astrotime (define-public julia-astrotime
(package (package
(name "julia-astrotime") (name "julia-astrotime")

View file

@ -2028,6 +2028,9 @@ covers feedback and persistent events.")
qtbase-5)) qtbase-5))
(arguments (arguments
(list (list
;; The `plasma-querytest' test is known to fail when tests are run in parallel:
;; <https://sources.debian.org/src/kpackage/5.107.0-1/debian/changelog/#L92>
#:parallel-tests? #f
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch (add-after 'unpack 'patch

View file

@ -283,7 +283,7 @@ annotating features.")
(define-public kdenlive (define-public kdenlive
(package (package
(name "kdenlive") (name "kdenlive")
(version "23.04.2") (version "23.08.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -292,7 +292,7 @@ annotating features.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0dgrgnnq38nphfzbapr7dkb21lv4idqynxqmzv9x3maijmp1jjfr")))) (base32 "0qwnz99wdlfkc08imf18wdvms9lzsph4nyjh2845145sl322yans"))))
(build-system qt-build-system) (build-system qt-build-system)
(arguments (arguments
;; XXX: there is a single test that spawns other tests and ;; XXX: there is a single test that spawns other tests and

View file

@ -3,6 +3,7 @@
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Pradana Aumars <paumars@courrier.dev> ;;; Copyright © 2022 Pradana Aumars <paumars@courrier.dev>
;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -25,6 +26,7 @@
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix download) #:use-module (guix download)
@ -38,43 +40,34 @@
(define-public lean (define-public lean
(package (package
(name "lean") (name "lean")
(version "3.41.0") (version "3.51.1")
(home-page "https://github.com/leanprover-community/lean") (home-page "https://lean-lang.org" )
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (url home-page) (uri (git-reference
(commit (string-append "v" version)))) (url "https://github.com/leanprover-community/lean")
(commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0mpxlfjq460x1vi3v6qzgjv74asg0qlhykd51pj347795x5b1hf1")))) "17g4d3lqnbl1yfy2pjannf73v8qhc5003d2jkmrqiy05zkqs8d9n"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(inputs (inputs
(list bash-minimal gmp)) (list gmp))
(arguments (arguments
`(#:build-type "Release" ; default upstream build type (list
;; XXX: Test phases currently fail on 32-bit sytems. #:build-type "Release" ; default upstream build type
;; Tests for those architectures have been temporarily ;; XXX: Test phases currently fail on 32-bit sytems.
;; disabled, pending further investigation. ;; Tests for those architectures have been temporarily
#:tests? ,(and (not (%current-target-system)) ;; disabled, pending further investigation.
(let ((arch (%current-system))) #:tests? (and (not (%current-target-system))
(not (or (string-prefix? "i686" arch) (let ((arch (%current-system)))
(string-prefix? "armhf" arch))))) (not (or (string-prefix? "i686" arch)
#:phases (string-prefix? "armhf" arch)))))
(modify-phases %standard-phases #:phases
(add-after 'patch-source-shebangs 'patch-tests-shebangs #~(modify-phases %standard-phases
(lambda _ (add-before 'configure 'chdir-to-src
(let ((sh (which "sh")) (lambda _ (chdir "src"))))))
(bash (which "bash")))
(substitute* (find-files "tests/lean" "\\.sh$")
(("#![[:blank:]]?/bin/sh")
(string-append "#!" sh))
(("#![[:blank:]]?/bin/bash")
(string-append "#!" bash))
(("#![[:blank:]]?usr/bin/env bash")
(string-append "#!" bash))))))
(add-before 'configure 'chdir-to-src
(lambda _ (chdir "src"))))))
(synopsis "Theorem prover and programming language") (synopsis "Theorem prover and programming language")
(description (description
"Lean is a theorem prover and programming language with a small trusted "Lean is a theorem prover and programming language with a small trusted

View file

@ -493,7 +493,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major ;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream. ;; versions that are still supported upstream.
(define-public linux-libre-6.6-version "6.6.2") (define-public linux-libre-6.6-version "6.6.7")
(define-public linux-libre-6.6-gnu-revision "gnu") (define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6 (define deblob-scripts-6.6
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -503,30 +503,15 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1hg3ck1j8288fhlhcvhgs1zzwh3i62nfvphw7x3vsaqr75kiwbjp"))) (base32 "1hg3ck1j8288fhlhcvhgs1zzwh3i62nfvphw7x3vsaqr75kiwbjp")))
(define-public linux-libre-6.6-pristine-source (define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version) (let ((version linux-libre-6.6-version)
(hash (base32 "0zmpk5ls6282j88xpnymkr8z5hxpk2495hjjxm0jmb6ninnzdm3k"))) (hash (base32 "0hfqdyxl4nqmm4pspfm1ang8616dbsaj0d968c0186ch0738xrhc")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-6.6))) deblob-scripts-6.6)))
(define-public linux-libre-6.5-version "6.5.12")
(define-public linux-libre-6.5-gnu-revision "gnu")
(define deblob-scripts-6.5
(linux-libre-deblob-scripts
linux-libre-6.5-version
linux-libre-6.5-gnu-revision
(base32 "01mm6v67bcrhgm97axsw46x0iix9im7hmlb765f3bkjhwklpxdy7")
(base32 "066z5lw5vrfayhv23hpfcm6fh6b7zmn2v13kfv1g3z3jl1wblhfh")))
(define-public linux-libre-6.5-pristine-source
(let ((version linux-libre-6.5-version)
(hash (base32 "17rmkzxszp2jg1zx2mmdcy30ffrsd0qms513sxd14klp5k9w2saa")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.5)))
;; The "longterm" kernels — the older releases with long-term upstream support. ;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines: ;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html> ;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-6.1-version "6.1.63") (define-public linux-libre-6.1-version "6.1.68")
(define-public linux-libre-6.1-gnu-revision "gnu") (define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1 (define deblob-scripts-6.1
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -536,12 +521,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1hdibv43xbn1lv83i6qjgfmf1bvqxvq17fryfsq4r4sjgs9212js"))) (base32 "1hdibv43xbn1lv83i6qjgfmf1bvqxvq17fryfsq4r4sjgs9212js")))
(define-public linux-libre-6.1-pristine-source (define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version) (let ((version linux-libre-6.1-version)
(hash (base32 "13bmy22mi4ybl21kr3hdy6qiaawiqz2jgl2gl9hwqkyx04xh97f2"))) (hash (base32 "1qc4cwqlfni9i6mzh6arghdsd842hp9lb7s832dxw1p261mg4prn")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-6.1))) deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.139") (define-public linux-libre-5.15-version "5.15.143")
(define-public linux-libre-5.15-gnu-revision "gnu") (define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15 (define deblob-scripts-5.15
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -551,12 +536,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1idjrn2w8jrixj8ifkk1awxyyq5042nc4p2mld4rda96azlnp948"))) (base32 "1idjrn2w8jrixj8ifkk1awxyyq5042nc4p2mld4rda96azlnp948")))
(define-public linux-libre-5.15-pristine-source (define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version) (let ((version linux-libre-5.15-version)
(hash (base32 "0kh4v1224a7p7ib64pnmc1qid3d1lvg3c14l5s4rpr8qzq6w2s4w"))) (hash (base32 "00lyv7zsj97mkg9i7dkb1a6km22mnr0qr687d9zz4ckjq1pb2sq9")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.15))) deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.201") (define-public linux-libre-5.10-version "5.10.204")
(define-public linux-libre-5.10-gnu-revision "gnu1") (define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10 (define deblob-scripts-5.10
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -566,12 +551,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0xrrnmb5kcc5r21bdm24aq0fnkk1imn367c1cxlj78b6l6gigx4b"))) (base32 "0xrrnmb5kcc5r21bdm24aq0fnkk1imn367c1cxlj78b6l6gigx4b")))
(define-public linux-libre-5.10-pristine-source (define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version) (let ((version linux-libre-5.10-version)
(hash (base32 "0642y6qj2d4aww6jcki81ba53pvjyfazjxgzgj8brqx8ixchdz3a"))) (hash (base32 "1vnamiyr378q52xgkg7kvpx80zck729dim77vp06a3q6n580g5gz")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.10))) deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.261") (define-public linux-libre-5.4-version "5.4.264")
(define-public linux-libre-5.4-gnu-revision "gnu1") (define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4 (define deblob-scripts-5.4
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -581,12 +566,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0sw67b2pk3lng4y67diqqnhxaggnp3nbkx8dxc5fs27rinfxr4m1"))) (base32 "0sw67b2pk3lng4y67diqqnhxaggnp3nbkx8dxc5fs27rinfxr4m1")))
(define-public linux-libre-5.4-pristine-source (define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version) (let ((version linux-libre-5.4-version)
(hash (base32 "1hsgnv2vcziflhzrrxiny2yp88ybdqda48fm60xhpaphhs0cgfii"))) (hash (base32 "1c5n47dq9khb15hz24a000k3hj913vv1dda6famnm8wpjbfr176k")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.4))) deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.299") (define-public linux-libre-4.19-version "4.19.302")
(define-public linux-libre-4.19-gnu-revision "gnu1") (define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19 (define deblob-scripts-4.19
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -596,12 +581,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1425mhkfxn18vxn05bb4h3li7x1jl7l1hf1zi8xhnqv3wa31h9wl"))) (base32 "1425mhkfxn18vxn05bb4h3li7x1jl7l1hf1zi8xhnqv3wa31h9wl")))
(define-public linux-libre-4.19-pristine-source (define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version) (let ((version linux-libre-4.19-version)
(hash (base32 "12p431p2jqjfsf0all3fgn47z9fr2cdqyxipfrf4s4mlw4hpbyy6"))) (hash (base32 "1kkkpm34p5rq0iijzrzwaq0cb62w543argargw5p1wzg8803rlsk")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.19))) deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.330") (define-public linux-libre-4.14-version "4.14.333")
(define-public linux-libre-4.14-gnu-revision "gnu1") (define-public linux-libre-4.14-gnu-revision "gnu1")
(define deblob-scripts-4.14 (define deblob-scripts-4.14
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -611,7 +596,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1faagsj4i31z2bp83hflx3q9vrddjnn37a3ah2b47iaplva7z1nd"))) (base32 "1faagsj4i31z2bp83hflx3q9vrddjnn37a3ah2b47iaplva7z1nd")))
(define-public linux-libre-4.14-pristine-source (define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version) (let ((version linux-libre-4.14-version)
(hash (base32 "0rwgzyfmrns6zir0dpxkwz2hm3z8c0af3wy11lmxamaa5i2wq3k7"))) (hash (base32 "0j5nrankrhi56qzmyjg1pznqx1zgk5f7cfa154smjbn3zlm7lcv6")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.14))) deblob-scripts-4.14)))
@ -649,11 +634,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(list %boot-logo-patch (list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch))) %linux-libre-arm-export-__sync_icache_dcache-patch)))
(define-public linux-libre-6.5-source
(source-with-patches linux-libre-6.5-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
(define-public linux-libre-6.1-source (define-public linux-libre-6.1-source
(source-with-patches linux-libre-6.1-pristine-source (source-with-patches linux-libre-6.1-pristine-source
(append (append
@ -773,11 +753,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
linux-libre-6.6-gnu-revision linux-libre-6.6-gnu-revision
linux-libre-6.6-source)) linux-libre-6.6-source))
(define-public linux-libre-headers-6.5
(make-linux-libre-headers* linux-libre-6.5-version
linux-libre-6.5-gnu-revision
linux-libre-6.5-source))
(define-public linux-libre-headers-6.1 (define-public linux-libre-headers-6.1
(make-linux-libre-headers* linux-libre-6.1-version (make-linux-libre-headers* linux-libre-6.1-version
linux-libre-6.1-gnu-revision linux-libre-6.1-gnu-revision
@ -1125,19 +1100,11 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux") "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define-public linux-libre-6.5 (define-public linux-libre-version linux-libre-6.6-version)
(make-linux-libre* linux-libre-6.5-version (define-public linux-libre-gnu-revision linux-libre-6.6-gnu-revision)
linux-libre-6.5-gnu-revision (define-public linux-libre-pristine-source linux-libre-6.6-pristine-source)
linux-libre-6.5-source (define-public linux-libre-source linux-libre-6.6-source)
'("x86_64-linux" "i686-linux" "armhf-linux" (define-public linux-libre linux-libre-6.6)
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-6.5-version)
(define-public linux-libre-gnu-revision linux-libre-6.5-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-6.5-pristine-source)
(define-public linux-libre-source linux-libre-6.5-source)
(define-public linux-libre linux-libre-6.5)
(define-public linux-libre-6.1 (define-public linux-libre-6.1
(make-linux-libre* linux-libre-6.1-version (make-linux-libre* linux-libre-6.1-version
@ -1370,9 +1337,9 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-with-bpf (define-public linux-libre-with-bpf
(let ((base-linux-libre (let ((base-linux-libre
(make-linux-libre* (make-linux-libre*
linux-libre-6.5-version linux-libre-6.6-version
linux-libre-6.5-gnu-revision linux-libre-6.6-gnu-revision
linux-libre-6.5-source linux-libre-6.6-source
'("x86_64-linux" "i686-linux" "armhf-linux" '("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "powerpc64le-linux" "riscv64-linux") "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:extra-version "bpf" #:extra-version "bpf"
@ -6618,17 +6585,17 @@ by hand is no trivial task: @command{tmon} aims to make it understandable.")
(source (package-source linux-libre)) (source (package-source linux-libre))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no test suite (list
#:make-flags #:tests? #f ;no test suite
(list (string-append "CC=" ,(cc-for-target)) #:make-flags
(string-append "PREFIX=" (assoc-ref %outputs "out"))) #~(list (string-append "CC=" #$(cc-for-target))
#:phases (string-append "PREFIX=" #$output))
(modify-phases %standard-phases #:phases
(add-after 'unpack 'enter-subdirectory #~(modify-phases %standard-phases
(lambda _ (add-after 'unpack 'enter-subdirectory
(chdir "tools/power/x86/turbostat") (lambda _
#t)) (chdir "tools/power/x86/turbostat")))
(delete 'configure)))) ; no configure script (delete 'configure)))) ;no configure script
(inputs (inputs
(list libcap)) (list libcap))
(supported-systems '("i686-linux" "x86_64-linux")) (supported-systems '("i686-linux" "x86_64-linux"))
@ -8990,7 +8957,8 @@ management tools in userspace.")
"0hpzghf1a4cwawzhkiwdzin80h6hd09fskl77d5ppgc084yvj8x0")))) "0hpzghf1a4cwawzhkiwdzin80h6hd09fskl77d5ppgc084yvj8x0"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
`(#:import-path "github.com/vishvananda/netlink")) `(#:tests? #f ; Tests depend on specific kernel modules.
#:import-path "github.com/vishvananda/netlink"))
(native-inputs (native-inputs
(list go-golang-org-x-sys go-netns)) (list go-golang-org-x-sys go-netns))
(home-page "https://github.com/vishvananda/netlink") (home-page "https://github.com/vishvananda/netlink")
@ -9356,7 +9324,7 @@ types and interfaces and translates so that the X server can use them.")
(define-public pipewire (define-public pipewire
(package (package
(name "pipewire") (name "pipewire")
(version "0.3.77") (version "1.0.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -9365,7 +9333,7 @@ types and interfaces and translates so that the X server can use them.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"11jdd9ljm6967cdp97qqf5fa02ad69kdgk3212ap5gfndky2h43m")))) "0a8wvsnbgqanp2vjdpkaxpny0k17hz720rd20zdi00s9xjbcrycr"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
(list (list
@ -9379,6 +9347,8 @@ types and interfaces and translates so that the X server can use them.")
(native-inputs (native-inputs
(list `(,glib "bin") (list `(,glib "bin")
pkg-config pkg-config
doxygen
python
python-docutils)) python-docutils))
(inputs (list alsa-lib (inputs (list alsa-lib
avahi avahi
@ -9841,7 +9811,7 @@ kernel side implementation.")
(define-public erofs-utils (define-public erofs-utils
(package (package
(name "erofs-utils") (name "erofs-utils")
(version "1.7") (version "1.7.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -9850,7 +9820,7 @@ kernel side implementation.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0bi8n1kb263v1gvis21pa9dxsf3p96d1nasm21icmv3rd9g2xh6p")))) (base32 "1mvybd06cswxj0nzk9ph1pkb9mrs8lvcbn6cgsp7z3wl6jai9d6d"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list lz4 (list lz4

View file

@ -2971,7 +2971,16 @@ pure Common Lisp.")
(license license:expat)))) (license license:expat))))
(define-public ecl-cl-pcg (define-public ecl-cl-pcg
(sbcl-package->ecl-package sbcl-cl-pcg)) (let ((pkg (sbcl-package->ecl-package sbcl-cl-pcg)))
(package
(inherit pkg)
(arguments
(substitute-keyword-arguments (package-arguments pkg)
;; Tests are failing on ECL with:
;; PCG.TEST::TEST-REWINDAn error occurred during initialization:
;; 40502229875678917802724098623316930025 is not of type
;; (INTEGER 0 2305843009213693951)
((#:tests? _ #f) #f))))))
(define-public cl-pcg (define-public cl-pcg
(sbcl-package->cl-source-package sbcl-cl-pcg)) (sbcl-package->cl-source-package sbcl-cl-pcg))
@ -9986,8 +9995,8 @@ implementation specific equivalent.")
(sbcl-package->ecl-package sbcl-trivial-macroexpand-all)) (sbcl-package->ecl-package sbcl-trivial-macroexpand-all))
(define-public sbcl-serapeum (define-public sbcl-serapeum
(let ((commit "47217ab69f76673db7e1fa65665ab804fb46d974") (let ((commit "c08442a9757b7fa30ac345cb040e1642f97f6b78")
(revision "11")) (revision "12"))
(package (package
(name "sbcl-serapeum") (name "sbcl-serapeum")
(version (git-version "0.0.0" revision commit)) (version (git-version "0.0.0" revision commit))
@ -10000,7 +10009,7 @@ implementation specific equivalent.")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1mr868z1za6vfhb7gq3j7c1rb606gqfzschxdy7wcqx5xv3ndgpa")))) (base32 "1sabd048agvgv7bhbw126rci9hf45fk08zhghcv6an2h6xwmc3qv"))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(inputs (inputs
(list sbcl-alexandria (list sbcl-alexandria
@ -12626,7 +12635,7 @@ them as PNG files.")
(define-public sbcl-history-tree (define-public sbcl-history-tree
(package (package
(name "sbcl-history-tree") (name "sbcl-history-tree")
(version "0.1.1") (version "0.1.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -12635,12 +12644,7 @@ them as PNG files.")
(commit version))) (commit version)))
(file-name (git-file-name "cl-history-tree" version)) (file-name (git-file-name "cl-history-tree" version))
(sha256 (sha256
(base32 "16fynij438zs4g29m7c0vmkfb0sbaz8gj7zjnxpbgjckbim93qwl")) (base32 "1n3q6aqh0wm24pksj8371j5iinxpzy2kcnz97kmpndm1yhv4x5f2"))))
(modules '((guix build utils)))
(snippet
`(begin
(delete-file-recursively "nasdf")
#t))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(inputs (inputs
(list (list
@ -12649,7 +12653,7 @@ them as PNG files.")
sbcl-local-time sbcl-local-time
sbcl-nclasses sbcl-nclasses
sbcl-trivial-package-local-nicknames)) sbcl-trivial-package-local-nicknames))
(native-inputs (list sbcl-nasdf sbcl-lisp-unit2)) (native-inputs (list sbcl-lisp-unit2))
(home-page "https://github.com/atlas-engineer/history-tree") (home-page "https://github.com/atlas-engineer/history-tree")
(synopsis "Store the history of a browser's visited paths") (synopsis "Store the history of a browser's visited paths")
(description (description
@ -18577,8 +18581,8 @@ building Jupyter kernels, based on Maxima-Jupyter which was based on
(sbcl-package->cl-source-package sbcl-common-lisp-jupyter)) (sbcl-package->cl-source-package sbcl-common-lisp-jupyter))
(define-public sbcl-radiance (define-public sbcl-radiance
(let ((commit "a7237831970edfd330dddd5b347d3d1277853bf0") (let ((commit "8d826c7fe1935338565580931db43f46181e0e85")
(revision "2")) (revision "3"))
(package (package
(name "sbcl-radiance") (name "sbcl-radiance")
(version (git-version "2.1.2" revision commit)) (version (git-version "2.1.2" revision commit))
@ -18590,7 +18594,7 @@ building Jupyter kernels, based on Maxima-Jupyter which was based on
(commit commit))) (commit commit)))
(file-name (git-file-name "radiance" version)) (file-name (git-file-name "radiance" version))
(sha256 (sha256
(base32 "1q4x9mswiizwgr7acl5zi6lkssfg2zajqbdq7xhw1kq6xfnq37j2")))) (base32 "1j823dgp87www0sjbcbv9j025bfxlkwhjd7kz6635mrqwmmlki4l"))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(arguments (arguments
`(#:tests? #f ; TODO: The tests require some configuration. `(#:tests? #f ; TODO: The tests require some configuration.
@ -19186,6 +19190,43 @@ Lisp.")
(define-public cl-percent-encoding (define-public cl-percent-encoding
(sbcl-package->cl-source-package sbcl-percent-encoding)) (sbcl-package->cl-source-package sbcl-percent-encoding))
(define-public sbcl-machine-state
(let ((commit "afa7392bc5dcb689cd170bcca765fb6ce6e4efc5")
(revision "1"))
(package
(name "sbcl-machine-state")
(version (git-version "1.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/machine-state")
(commit commit)))
(file-name (git-file-name "machine-state" version))
(sha256
(base32 "1b897wj06cnalzf5nl6rif1skpa79rzc9a562x1bdhvanhsp7hwa"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-bordeaux-threads
sbcl-cffi
sbcl-cl-opengl
sbcl-documentation-utils))
(arguments
'(#:tests? #f ; No tests.
#:asd-systems '("machine-state" "machine-state/opengl")))
(home-page "https://notabug.org/cage/cl-mount-info.git")
(synopsis "Retrieve machine state information about CPU time, memory usage and more")
(description
"This library implements various functions to access status information
about the machine, process, etc.")
(license license:zlib))))
(define-public ecl-machine-state
(sbcl-package->ecl-package sbcl-machine-state))
(define-public cl-machine-state
(sbcl-package->cl-source-package sbcl-machine-state))
(define-public sbcl-cl-mount-info (define-public sbcl-cl-mount-info
(let ((commit "2024f5037a7f63db3e3587dc9972cd7b9318f06b") (let ((commit "2024f5037a7f63db3e3587dc9972cd7b9318f06b")
(revision "1")) (revision "1"))
@ -25895,7 +25936,7 @@ JavaScript code.")
(define-public sbcl-nhooks (define-public sbcl-nhooks
(package (package
(name "sbcl-nhooks") (name "sbcl-nhooks")
(version "1.2.1") (version "1.2.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -25905,7 +25946,7 @@ JavaScript code.")
(file-name (git-file-name "cl-nhooks" version)) (file-name (git-file-name "cl-nhooks" version))
(sha256 (sha256
(base32 (base32
"10ym4ybda2l426flicqz0f4yg7fbw7yjk1k0wqpf4wfk24gm1b8g")))) "1m9dfp7wjm8k16x45qnw258ca8gnic3k2ik79sdn5gxcx6qxy3g8"))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(inputs (inputs
(list sbcl-serapeum)) (list sbcl-serapeum))
@ -25981,7 +26022,7 @@ access lexicographic data from WordNet.")
(define-public sbcl-nfiles (define-public sbcl-nfiles
(package (package
(name "sbcl-nfiles") (name "sbcl-nfiles")
(version "1.1.3") (version "1.1.4")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -25991,12 +26032,7 @@ access lexicographic data from WordNet.")
(file-name (git-file-name "cl-nfiles" version)) (file-name (git-file-name "cl-nfiles" version))
(sha256 (sha256
(base32 (base32
"1rndrxqb16wfbi5zkg8gbqm163xhs31ka0algsxvrhb9kf2j8c4q")) "1a8zsphbbl9r4sdm95kgm4ljd9b148c9fnwlq7f930fh9826kf72"))))
(modules '((guix build utils)))
(snippet
`(begin
(delete-file-recursively "nasdf")
#t))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(inputs (inputs
(list gnupg (list gnupg
@ -26008,8 +26044,7 @@ access lexicographic data from WordNet.")
sbcl-trivial-package-local-nicknames sbcl-trivial-package-local-nicknames
sbcl-trivial-types)) sbcl-trivial-types))
(native-inputs (native-inputs
(list sbcl-lisp-unit2 (list sbcl-lisp-unit2))
sbcl-nasdf))
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
@ -26106,7 +26141,7 @@ desktop files to the right directories.
(define-public sbcl-nclasses (define-public sbcl-nclasses
(package (package
(name "sbcl-nclasses") (name "sbcl-nclasses")
(version "0.6.0") (version "0.6.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -26116,18 +26151,12 @@ desktop files to the right directories.
(file-name (git-file-name "cl-nclasses" version)) (file-name (git-file-name "cl-nclasses" version))
(sha256 (sha256
(base32 (base32
"0kp5wim5frr4l52rgchaz1cj74daqngagrz3r0lgasii6bwlzsi6")) "00is7fg1jsj9r3jawphbk5gh8kmiixl7g60xg1ic2q2cpilfd1by"))))
(modules '((guix build utils)))
(snippet
`(begin
(delete-file-recursively "nasdf")
#t))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(inputs (inputs
(list sbcl-moptilities)) (list sbcl-moptilities))
(native-inputs (native-inputs
(list sbcl-lisp-unit2 (list sbcl-lisp-unit2))
sbcl-nasdf))
(home-page "https://github.com/atlas-engineer/nclasses") (home-page "https://github.com/atlas-engineer/nclasses")
(synopsis "Simplify class, condition, and generic function definitions.") (synopsis "Simplify class, condition, and generic function definitions.")
(description (description
@ -26145,55 +26174,50 @@ extra features like type inference.")
(sbcl-package->cl-source-package sbcl-nclasses)) (sbcl-package->cl-source-package sbcl-nclasses))
(define-public sbcl-prompter (define-public sbcl-prompter
(let ((commit "b40a13af6ba4bd5c73c17e94dd2cbc2901bbd02f") (package
(revision "0")) (name "sbcl-prompter")
(package (version "0.1.1")
(name "sbcl-prompter") (source
(version (git-version "0.1.0" revision commit)) (origin
(source (method git-fetch)
(origin (uri (git-reference
(method git-fetch) (url "https://github.com/atlas-engineer/prompter")
(uri (git-reference (commit version)))
(url "https://github.com/atlas-engineer/prompter") (file-name (git-file-name "cl-prompter" version))
(commit commit))) (sha256
(file-name (git-file-name "cl-prompter" version)) (base32
(sha256 "008bq36siza9qwmz6b1pvpm53lxmzryahnhy372l18gl3180in03"))))
(base32 (build-system asdf-build-system/sbcl)
"1gg69rq2v9wcr7kj9fvd2i38r28fsgqqw6zs71m46krmr1gmfh4q")) (inputs
(modules '((guix build utils))) (list
(snippet sbcl-alexandria
`(begin sbcl-calispel
(delete-file-recursively "nasdf") sbcl-cl-containers
#t)))) sbcl-cl-str
(build-system asdf-build-system/sbcl) sbcl-closer-mop
(inputs sbcl-lparallel
(list sbcl-moptilities
sbcl-alexandria sbcl-nclasses
sbcl-calispel sbcl-serapeum
sbcl-cl-containers sbcl-trivial-package-local-nicknames))
sbcl-cl-str (native-inputs
sbcl-closer-mop (list sbcl-lisp-unit2))
sbcl-lparallel (home-page "https://github.com/atlas-engineer/prompter")
sbcl-moptilities (synopsis "Live-narrowing, fuzzy-matching, extensible prompt framework")
sbcl-nclasses (description
sbcl-serapeum "This prompter library is heavily inspired by Emacs' minibuffer and
sbcl-trivial-package-local-nicknames))
(native-inputs
(list sbcl-lisp-unit2
sbcl-nasdf))
(home-page "https://github.com/atlas-engineer/prompter")
(synopsis "Live-narrowing, fuzzy-matching, extensible prompt framework")
(description
"This prompter library is heavily inspired by Emacs' minibuffer and
Helm (@url{https://emacs-helm.github.io/helm/}). It only deals with the Helm (@url{https://emacs-helm.github.io/helm/}). It only deals with the
backend side of things, it does not handle any display. Features include backend side of things, it does not handle any display. Features include
asynchronous suggestion computation, multiple sources, actions and resumable asynchronous suggestion computation, multiple sources, actions and resumable
prompters.") prompters.")
(license license:bsd-3)))) (license license:bsd-3)))
(define-public cl-prompter (define-public cl-prompter
(sbcl-package->cl-source-package sbcl-prompter)) (sbcl-package->cl-source-package sbcl-prompter))
(define-public ecl-prompter
(sbcl-package->ecl-package sbcl-prompter))
(define-public sbcl-cl-template (define-public sbcl-cl-template
(let ((commit "46193a9a389bb950530e579eae7e6e5a18184832") (let ((commit "46193a9a389bb950530e579eae7e6e5a18184832")
(revision "0")) (revision "0"))
@ -26748,7 +26772,7 @@ in a native template application).")
(define-public sbcl-nkeymaps (define-public sbcl-nkeymaps
(package (package
(name "sbcl-nkeymaps") (name "sbcl-nkeymaps")
(version "1.1.0") (version "1.1.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -26757,7 +26781,7 @@ in a native template application).")
(commit version))) (commit version)))
(file-name (git-file-name "cl-nkeymaps" version)) (file-name (git-file-name "cl-nkeymaps" version))
(sha256 (sha256
(base32 "08q3bmb3i7mjpm83msp1qgpifpzf019ggikbxwc2dk04i3c2w0vv")))) (base32 "179hrnkn3pkwkp4ap6ax0zgp7xcr9cq7icff42r79gh43ri3kpzy"))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(inputs (inputs
(list sbcl-alexandria (list sbcl-alexandria
@ -26865,7 +26889,7 @@ instead of #'FOO.
(define-public sbcl-njson (define-public sbcl-njson
(package (package
(name "sbcl-njson") (name "sbcl-njson")
(version "1.2.1") (version "1.2.2")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -26874,7 +26898,7 @@ instead of #'FOO.
(file-name (git-file-name "cl-njson" version)) (file-name (git-file-name "cl-njson" version))
(sha256 (sha256
(base32 (base32
"0p3zvn3jfzcdzpvikdaw3g14wfsklq0msw0rjaxin3aa7vmqpyqk")))) "05v5bk3l47mds4ihxs8jlqm19gqq7hb4q0161bgg99w9847l63lk"))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(inputs (list sbcl-cl-json sbcl-jzon)) (inputs (list sbcl-cl-json sbcl-jzon))
(native-inputs (list sbcl-lisp-unit2)) (native-inputs (list sbcl-lisp-unit2))
@ -26972,7 +26996,7 @@ JSON handling. Load the parser backend you prefer!
(define-public sbcl-nsymbols (define-public sbcl-nsymbols
(package (package
(name "sbcl-nsymbols") (name "sbcl-nsymbols")
(version "0.3.1") (version "0.3.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -26981,7 +27005,7 @@ JSON handling. Load the parser backend you prefer!
(commit version))) (commit version)))
(file-name (git-file-name "cl-nsymbols" version)) (file-name (git-file-name "cl-nsymbols" version))
(sha256 (sha256
(base32 "14zdwsk2nrismj3xb54kfpgcdcsdzw3fyd7zwxlsir66lv9w9ji9")))) (base32 "1awh793s4fwhddllfcjz4sbkxwinh5w54s3glxh7rv00c7skdjd6"))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(native-inputs (list sbcl-lisp-unit2)) (native-inputs (list sbcl-lisp-unit2))
(inputs (list cl-closer-mop)) (inputs (list cl-closer-mop))

View file

@ -999,7 +999,7 @@ the HTML documentation of TXR.")
(define-public txr (define-public txr
(package (package
(name "txr") (name "txr")
(version "291") (version "292")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1008,7 +1008,7 @@ the HTML documentation of TXR.")
(commit (string-append "txr-" version)))) (commit (string-append "txr-" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0nsb302arpd2mw2z2l12j6yg9pp94lfb79h3sym72ih7rmklnfx7")))) (base32 "0lly446pinfrr5d4rgsas8c7kqal2g03bbsbmn0yvhvazb39c15g"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:configure-flags (list #:configure-flags
@ -1024,15 +1024,6 @@ the HTML documentation of TXR.")
(string-append "INSTALL" match #$output (string-append "INSTALL" match #$output
"/share/doc/" #$name "-" #$version))))) "/share/doc/" #$name "-" #$version)))))
(delete 'install-license-files) (delete 'install-license-files)
(add-after 'unpack 'inhibit-doc-syms-generation
(lambda _
(substitute* "genman.txr"
;; Exit from genman.txr before it tries to write to
;; stdlib/doc-syms.tl, which is anyway kept up to date
;; with each release (and is already compiled to
;; stdlib/doc-syms.tlo when genman.txr is run).
(("^@\\(output \"stdlib/doc-syms\\.tl\"\\).*" line)
(string-append "@(do (exit))\n" line)))))
(add-after 'unpack 'fix-paths (add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "stream.c" (substitute* "stream.c"

View file

@ -73,11 +73,13 @@
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages swig) #:use-module (gnu packages swig)
#:use-module (gnu packages vulkan)
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:export (make-lld-wrapper #:export (make-lld-wrapper
system->llvm-target)) system->llvm-target
clang-properties))
(define* (system->llvm-target #:optional (define* (system->llvm-target #:optional
(system (or (and=> (%current-target-system) (system (or (and=> (%current-target-system)
@ -113,7 +115,8 @@ as \"x86_64-linux\"."
("riscv64" => "RISCV64") ("riscv64" => "RISCV64")
("x86_64" => "X86_64") ("x86_64" => "X86_64")
("i686" => "X86") ("i686" => "X86")
("i586" => "X86")))) ("i586" => "X86")
("avr" => "AVR"))))
(define (llvm-uri component version) (define (llvm-uri component version)
;; LLVM release candidate file names are formatted 'tool-A.B.C-rcN/tool-A.B.CrcN.src.tar.xz' ;; LLVM release candidate file names are formatted 'tool-A.B.C-rcN/tool-A.B.CrcN.src.tar.xz'
@ -601,13 +604,13 @@ output), and Binutils.")
'(("14.0.6" . "14f8nlvnmdkp9a9a79wv67jbmafvabczhah8rwnqrgd5g3hfxxxx") '(("14.0.6" . "14f8nlvnmdkp9a9a79wv67jbmafvabczhah8rwnqrgd5g3hfxxxx")
("15.0.7" . "12sggw15sxq1krh1mfk3c1f07h895jlxbcifpwk3pznh4m1rjfy2") ("15.0.7" . "12sggw15sxq1krh1mfk3c1f07h895jlxbcifpwk3pznh4m1rjfy2")
("16.0.6" . "0jxmapg7shwkl88m4mqgfjv4ziqdmnppxhjz6vz51ycp2x4nmjky") ("16.0.6" . "0jxmapg7shwkl88m4mqgfjv4ziqdmnppxhjz6vz51ycp2x4nmjky")
("17.0.5" . "149flpr96vcn7a1ckya6mm93m9yp85l47w156fjd0r99ydxrw5kv"))) ("17.0.6" . "1a7rq3rgw5vxm8y39fyzr4kv7w97lli4a0c1qrkchwk8p0n07hgh")))
(define %llvm-patches (define %llvm-patches
'(("14.0.6" . ("clang-14.0-libc-search-path.patch")) '(("14.0.6" . ("clang-14.0-libc-search-path.patch"))
("15.0.7" . ("clang-15.0-libc-search-path.patch")) ("15.0.7" . ("clang-15.0-libc-search-path.patch"))
("16.0.6" . ("clang-16.0-libc-search-path.patch")) ("16.0.6" . ("clang-16.0-libc-search-path.patch"))
("17.0.5" . ("clang-17.0-libc-search-path.patch")))) ("17.0.6" . ("clang-17.0-libc-search-path.patch"))))
(define (llvm-monorepo version) (define (llvm-monorepo version)
(origin (origin
@ -704,6 +707,10 @@ of programming tools as well as libraries with equivalent functionality.")
#$(string-append "-DLLVM_TARGETS_TO_BUILD=" #$(string-append "-DLLVM_TARGETS_TO_BUILD="
(system->llvm-target))) (system->llvm-target)))
'()) '())
;; undefined reference to `__atomic_fetch_add_8' in lib/libLLVMOrcJIT.so.14
#$@(if (target-ppc32?)
(list "-DCMAKE_SHARED_LINKER_FLAGS=-latomic")
`())
"-DCMAKE_SKIP_BUILD_RPATH=FALSE" "-DCMAKE_SKIP_BUILD_RPATH=FALSE"
"-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
"-DBUILD_SHARED_LIBS:BOOL=TRUE" "-DBUILD_SHARED_LIBS:BOOL=TRUE"
@ -1500,7 +1507,7 @@ Library.")
(define-public llvm-17 (define-public llvm-17
(package (package
(inherit llvm-15) (inherit llvm-15)
(version "17.0.5") (version "17.0.6")
(source (llvm-monorepo version)))) (source (llvm-monorepo version))))
(define-public clang-runtime-17 (define-public clang-runtime-17
@ -1516,7 +1523,7 @@ Library.")
(package-version llvm-17))) (package-version llvm-17)))
(sha256 (sha256
(base32 (base32
"12dbp10bhq25a44qnvz978mf9y6pdycwpp7sgq8a93by0fpgb72r"))))) "1f8szx762c325916gjxb5lw7zxyidynwnvx6fxxqscsx8514cxxa")))))
(define-public libomp-17 (define-public libomp-17
(package (package
@ -1946,37 +1953,37 @@ standard C++ library.")
(define-public libclc (define-public libclc
(package (package
(name "libclc") (name "libclc")
(version "9.0.1") (version (package-version llvm-15))
(source (source (llvm-monorepo version))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/llvm/llvm-project")
(commit (string-append "llvmorg-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1d1qayvrvvc1di7s7jfxnjvxq2az4lwq1sw1b2gq2ic0nksvajz0"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags (list
(list (string-append "-DLLVM_CLANG=" #:configure-flags
(assoc-ref %build-inputs "clang") #~(list (string-append "-DLLVM_CLANG="
"/bin/clang") (assoc-ref %build-inputs "clang")
(string-append "-DPYTHON=" "/bin/clang")
(assoc-ref %build-inputs "python") (string-append "-DLLVM_SPIRV="
"/bin/python3")) (assoc-ref %build-inputs "spirv-llvm-translator")
#:phases "/bin/llvm-spirv"))
(modify-phases %standard-phases #:phases
(add-after 'unpack 'chdir #~(modify-phases %standard-phases
(lambda _ (chdir "libclc") #t))))) (add-after 'unpack 'enter-subdirectory
(lambda _
(chdir "libclc")))
(add-after 'enter-subdirectory 'skip-clspv-tests
(lambda _
(substitute* "CMakeLists.txt"
(("ptx\\.\\*") "[ptx|clspv].*")))))))
(propagated-inputs
(list spirv-llvm-translator spirv-tools))
(native-inputs (native-inputs
(list clang-9 llvm-9 python)) (list clang-15 llvm-15 python))
(home-page "https://libclc.llvm.org") (home-page "https://libclc.llvm.org")
(synopsis "Libraries for the OpenCL programming language") (synopsis "Libraries for the OpenCL programming language")
(description (description
"This package provides an implementation of the OpenCL library "This package provides an implementation of the OpenCL library
requirements according to version 1.1 of the OpenCL specification.") requirements according to version 1.1 of the OpenCL specification.")
(properties `((release-monitoring-url . ,%llvm-release-monitoring-url)))
;; Apache license 2.0 with LLVM exception ;; Apache license 2.0 with LLVM exception
(license license:asl2.0))) (license license:asl2.0)))

View file

@ -1532,6 +1532,54 @@ computing environments.")
data analysis.") data analysis.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public python-scikit-learn-extra
(package
(name "python-scikit-learn-extra")
(version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/scikit-learn-contrib/scikit-learn-extra")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yy6ka94ss88f3r7b6mpjf1l8lnv7aabhsg844pigfj8lfiv0wvl"))))
(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")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Restrict OpenBLAS threads to prevent segfaults while testing!
(setenv "OPENBLAS_NUM_THREADS" "1")
;; Some tests require write access to $HOME.
(setenv "HOME" "/tmp")
;; Step out of the source directory to avoid interference;
;; we want to run the installed code with extensions etc.
(with-directory-excursion "/tmp"
(invoke "pytest" "-vv" "--pyargs"
"sklearn_extra"
;; ignore tests that require network
"-k" "not test_build"))))))))
(propagated-inputs (list python-numpy python-scikit-learn python-scipy))
(native-inputs (list python-pytest python-pytest-cov python-cython))
(home-page "https://github.com/scikit-learn-contrib/scikit-learn-extra")
(synopsis "Set of tools for scikit-learn")
(description
"This package provides a Python module for machine learning that extends
scikit-learn. It includes algorithms that are useful but do not satisfy the
scikit-learn inclusion criteria, for instance due to their novelty or lower
citation number.")
(license license:bsd-3)))
(define-public python-thinc (define-public python-thinc
(package (package
(name "python-thinc") (name "python-thinc")
@ -1920,9 +1968,9 @@ Covariance Matrix Adaptation Evolution Strategy (CMA-ES) for Python.")
(license license:expat))) (license license:expat)))
(define-public python-autograd (define-public python-autograd
(let* ((commit "442205dfefe407beffb33550846434baa90c4de7") (let* ((commit "c6d81ce7eede6db801d4e9a92b27ec5d409d0eab")
(revision "0") (revision "0")
(version (git-version "0.0.0" revision commit))) (version (git-version "1.5" revision commit)))
(package (package
(name "python-autograd") (name "python-autograd")
(home-page "https://github.com/HIPS/autograd") (home-page "https://github.com/HIPS/autograd")
@ -1933,19 +1981,14 @@ Covariance Matrix Adaptation Evolution Strategy (CMA-ES) for Python.")
(commit commit))) (commit commit)))
(sha256 (sha256
(base32 (base32
"189sv2xb0mwnjawa9z7mrgdglc1miaq93pnck26r28fi1jdwg0z4")) "04kljgydng42xlg044h6nbzxpban1ivd6jzb8ydkngfq88ppipfk"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(version version) (version version)
(build-system python-build-system) (build-system pyproject-build-system)
(native-inputs (native-inputs
(list python-nose python-pytest)) (list python-nose python-pytest))
(propagated-inputs (propagated-inputs
(list python-future python-numpy)) (list python-future python-numpy))
(arguments
`(#:phases (modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "py.test" "-v"))))))
(synopsis "Efficiently computes derivatives of NumPy code") (synopsis "Efficiently computes derivatives of NumPy code")
(description "Autograd can automatically differentiate native Python and (description "Autograd can automatically differentiate native Python and
NumPy code. It can handle a large subset of Python's features, including loops, NumPy code. It can handle a large subset of Python's features, including loops,

View file

@ -3192,14 +3192,14 @@ from the Cyrus IMAP project.")
(define-public opensmtpd (define-public opensmtpd
(package (package
(name "opensmtpd") (name "opensmtpd")
(version "7.4.0p0") (version "7.4.0p1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.opensmtpd.org/archives/" (uri (string-append "https://www.opensmtpd.org/archives/"
"opensmtpd-" version ".tar.gz")) "opensmtpd-" version ".tar.gz"))
(sha256 (sha256
(base32 "0x731hi7i01mxaz07p1l5q3gwmyl422h404yc61ya4aa8g1wr0f1")))) (base32 "1dbhvf73z9qi9pzj4h58bgnzsafiwpmy7n17rba83q8rjkna50ly"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
;; OpenSMTPd bundled (a subset of) libasr and libtls, which we use. See ;; OpenSMTPd bundled (a subset of) libasr and libtls, which we use. See

View file

@ -137,6 +137,7 @@
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages java) #:use-module (gnu packages java)
#:use-module (gnu packages less) #:use-module (gnu packages less)
#:use-module (gnu packages lisp) #:use-module (gnu packages lisp)
@ -164,6 +165,8 @@
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio) #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web) #:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt) #:use-module (gnu packages qt)
@ -173,6 +176,7 @@
#:use-module (gnu packages scheme) #:use-module (gnu packages scheme)
#:use-module (gnu packages serialization) #:use-module (gnu packages serialization)
#:use-module (gnu packages shells) #:use-module (gnu packages shells)
#:use-module (gnu packages simulation)
#:use-module (gnu packages sphinx) #:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite) #:use-module (gnu packages sqlite)
#:use-module (gnu packages swig) #:use-module (gnu packages swig)
@ -2917,7 +2921,7 @@ can solve two kinds of problems:
(define-public octave-cli (define-public octave-cli
(package (package
(name "octave-cli") (name "octave-cli")
(version "8.3.0") (version "8.4.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2925,7 +2929,7 @@ can solve two kinds of problems:
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1aav8i88y2yl11g5d44wpjngkpldvzk90ja7wghkb91cy2a9974i")))) "1a58zyrl1lx6b6wr2jbf6w806vjxr3jzbh6n85iinag47qxdg6kg"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list alsa-lib (list alsa-lib
@ -3650,6 +3654,146 @@ Cassowary solver with typical use cases gaining a 40x improvement. Memory
savings are consistently > 5x.") savings are consistently > 5x.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public python-accupy
(package
(name "python-accupy")
(version "0.3.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/diego-hayashi/accupy")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0sxkwpp2xy2jgakhdxr4nh1cspqv8l89kz6s832h05pbpyc0n767"))
(patches (search-patches "python-accupy-use-matplotx.patch"
"python-accupy-fix-use-of-perfplot.patch"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-eigen-include-dir
(lambda _
(substitute* "setup.py"
(("include_dirs=\\[\"\\/usr\\/include\\/eigen3\\/\"\\]," _)
(string-append "include_dirs=[\""
#$(file-append (this-package-input "eigen")
"/include/eigen3/")
"\"],"))))))))
(propagated-inputs (list eigen python-mpmath python-pyfma))
(native-inputs (list pybind11
python-matplotx
python-perfplot
python-pytest))
(home-page "https://github.com/diego-hayashi/accupy")
(synopsis "Accurate calculation of sums and dot products")
(description
"@code{accupy} is a Python library for accurately computing sums
and (dot) products. It implements Kahan summation, Shewchuck's
algorithm and summation in K-fold precision.")
(license license:gpl3+)))
(define-public python-ndim
(package
(name "python-ndim")
(version "0.1.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/diego-hayashi/ndim")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hri82k7pcpw9dns8l1f2asa3dm7hjv71wnxi3752258ia2qa44v"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-sympy))
(native-inputs (list python-flit-core python-pytest))
(home-page "https://github.com/diego-hayashi/ndim")
(synopsis "Multidimensional volumes and monomial integrals")
(description
"@code{ndim} computes all kinds of volumes and integrals of
monomials over such volumes in a fast, numerically stable way, using
recurrence relations.")
(license license:gpl3+)))
(define-public python-orthopy
(package
(name "python-orthopy")
(version "0.9.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/diego-hayashi/orthopy")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00s2rwjdlq38zkf7wl1gvm2aw057r30266lkzfxkrfzr4i705xnq"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-importlib-metadata
python-ndim
python-numpy
python-sympy))
(native-inputs (list ;python-cplot ;only used in deselected tests
python-matplotx
python-meshio
python-meshzoo
python-pytest
python-scipy))
(arguments
(list
#:test-flags
;; These tests fails with unexpected keyword arguments
;; in calls to cplot.
#~(list "--deselect" "tests/test_u3.py::test_write_single"
"--deselect" "tests/test_u3.py::test_write_tree")))
(home-page "https://github.com/diego-hayashi/orthopy")
(synopsis "Tools for orthogonal polynomials, Gaussian quadrature")
(description "@code{orthopy} provides various orthogonal polynomial
classes for lines, triangles, quadrilaterals, disks, spheres, hexahedra,
and n-cubes. All computations are done using numerically stable
recurrence schemes. Furthermore, all functions are fully vectorized and
can return results in exact arithmetic.")
(license license:gpl3+)))
(define-public python-quadpy
(package
(name "python-quadpy")
(version "0.16.10")
(source
(origin
(method url-fetch)
; Download zipfile from zenodo, because git checkout is missing
; some data files that are stored via git-lfs.
(uri (string-append
"https://zenodo.org/records/5541216/files/nschloe/quadpy-v"
version
".zip"))
(sha256
(base32
"1f989dipv7lqxvalfrvvlmhlxyl67a87lavyyqrr1mh88glhl592"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-importlib-metadata
python-numpy
python-orthopy
python-scipy
python-sympy))
(native-inputs (list python-accupy python-pytest unzip vtk))
(home-page "https://github.com/diego-hayashi/quadpy")
(synopsis "Numerical integration, quadrature for various domains")
(description
"More than 1500 numerical integration schemes for line segments, circles,
disks, triangles, quadrilaterals, spheres, balls, tetrahedra, hexahedra,
wedges, pyramids, n-spheres, n-balls, n-cubes, n-simplices, and the
1D/2D/3D/nD spaces with weight functions exp(-r) and exp(-r2) for fast
integration of real-, complex-, and vector-valued functions.")
(license license:gpl3+)))
(define-public slepc (define-public slepc
(package (package
(name "slepc") (name "slepc")
@ -4746,7 +4890,7 @@ point numbers.")
(define-public wxmaxima (define-public wxmaxima
(package (package
(name "wxmaxima") (name "wxmaxima")
(version "22.12.0") (version "23.11.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -4755,7 +4899,7 @@ point numbers.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"12bjadmy2mf7d8v4iszmzckahfcwjzaba8wpbigksh4brvhb4gj5")))) "0xj91wfkm19avwmpcfwgzdkcqjwfpkl3glhkpn4advsqc6sx3ra0"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (list gettext-minimal)) (native-inputs (list gettext-minimal))
(inputs (list bash-minimal (inputs (list bash-minimal

View file

@ -154,15 +154,15 @@ parsers to allow execution with Guile as extension languages.")))
(define-public mes (define-public mes
(package (package
(name "mes") (name "mes")
(version "0.25") (version "0.26")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/mes/" (uri (string-append "mirror://gnu/mes/"
"mes-" version ".tar.gz")) "mes-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0h49h85m1jkppfsv95zdxdrrw1q1mwswhq81lwxj1nbyasrm0lij")))) "1m45wcrpp3syzdniqx12nyr6v8f9hsg516pwl1k9894nb2ni08hg"))))
(supported-systems '("aarch64-linux" "armhf-linux" "i686-linux" (supported-systems '("armhf-linux" "i686-linux"
"x86_64-linux" "riscv64-linux")) "x86_64-linux" "riscv64-linux"))
(propagated-inputs (list mescc-tools nyacc-1.00.2)) (propagated-inputs (list mescc-tools nyacc-1.00.2))
(native-inputs (native-inputs
@ -213,14 +213,14 @@ Guile.")
(define-public mescc-tools (define-public mescc-tools
(package (package
(name "mescc-tools") (name "mescc-tools")
(version "1.5.0") (version "1.5.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://savannah/" name "/" (uri (string-append "mirror://savannah/" name "/"
name "-" version ".tar.gz")) name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1vjczlajyrbjcx9ld35vhdqbxfdwwy3axg0jray3iwnrf70qr700")))) "1jak61gxab8bj8ddpgwfn9lqs917szq1phadmg8y5cjsndn1hv4k"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(supported-systems '("i686-linux" "x86_64-linux" (supported-systems '("i686-linux" "x86_64-linux"
"armhf-linux" "aarch64-linux" "armhf-linux" "aarch64-linux"
@ -230,11 +230,7 @@ Guile.")
#:make-flags #~(list (string-append "PREFIX=" #$output)) #:make-flags #~(list (string-append "PREFIX=" #$output))
#:test-target "test" #:test-target "test"
#:phases #~(modify-phases %standard-phases #:phases #~(modify-phases %standard-phases
(delete 'configure) (delete 'configure))))
(add-after 'unpack 'patch-Kaem/test.sh
(lambda _
(substitute* "Kaem/test.sh"
(("#/usr/") "#! /usr")))))))
(native-inputs (list which)) (native-inputs (list which))
(synopsis "Tools for the full source bootstrapping process") (synopsis "Tools for the full source bootstrapping process")
(description (description

View file

@ -33,7 +33,7 @@
(define-public moreutils (define-public moreutils
(package (package
(name "moreutils") (name "moreutils")
(version "0.67") (version "0.68")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -42,7 +42,7 @@
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"045d2dfvsd4sxxr2i2qvkpgvi912qj9vc4gpc8fb4hr9q912z1q3")))) "1rxn01hgm5nypcpnl4s9v5zr4fxzf8vxinzbg0s781qlpk3lpcay"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:phases (list #:phases

View file

@ -204,6 +204,46 @@
#:use-module (gnu packages xorg) #:use-module (gnu packages xorg)
#:use-module ((srfi srfi-1) #:select (last))) #:use-module ((srfi srfi-1) #:select (last)))
(define-public alsa-scarlett-gui
(package
(name "alsa-scarlett-gui")
(version "0.3.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/geoffreybennett/alsa-scarlett-gui")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1nd764vd7qfy2x8dqapiyh5yrxjimm8b4himhm1qkgpf5hvh734l"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #false ;there is no check target
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(substitute* "src/Makefile"
((" cc -o")
(string-append " "
#$(cc-for-target) " -o")))
(chdir "src")))
(delete 'configure))))
(inputs
(list alsa-lib glib gtk))
(native-inputs
(list `(,glib "bin") pkg-config))
(home-page "https://github.com/geoffreybennett/alsa-scarlett-gui")
(synopsis "ALSA Scarlett2 control panel")
(description "This package provides a Gtk4 GUI for the ALSA controls
presented by the Linux kernel Focusrite Scarlett2 USB Protocol Mixer Driver.")
(license license:gpl3+)))
(define-public audacious (define-public audacious
(package (package
(name "audacious") (name "audacious")
@ -1895,7 +1935,7 @@ complete studio.")
(define-public tascam-gtk (define-public tascam-gtk
;; This commit represents the latest version at the time of this writing. ;; This commit represents the latest version at the time of this writing.
(let ((commit "17b8575ff88dfd2ede0f7ef9c5c5597ab8a00702") (let ((commit "69fb86f31efcdb27c7854d2a190457aab42b337a")
(revision "0")) (revision "0"))
(package (package
(name "tascam-gtk") (name "tascam-gtk")
@ -1908,10 +1948,10 @@ complete studio.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"07k7rccqqg7lnygkh97a200l1i6s1rl92n01v0q6n4257sinir6f")))) "05fbs5s24nwr6b10jgjhsfi7aj6y65kcickmygl7g84xvsnykdb0"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list liblo gtkmm-3 alsa-lib libxml++-2)) (list liblo gtkmm-3 alsa-lib libxml++-3))
(native-inputs (native-inputs
(list `(,glib "bin") pkg-config)) (list `(,glib "bin") pkg-config))
(home-page "https://github.com/onkelDead/tascam-gtk") (home-page "https://github.com/onkelDead/tascam-gtk")

View file

@ -21,14 +21,14 @@
(define-module (gnu packages ncdu) (define-module (gnu packages ncdu)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (gnu packages perl) #:use-module (guix build-system zig))
#:use-module (gnu packages zig))
(define-public ncdu-1 (define-public ncdu-1
;; This old version is LTS. Version 2 works fine and has more features, ;; This old version is LTS. Version 2 works fine and has more features,
@ -73,29 +73,17 @@ ncurses installed.")
#~(begin #~(begin
;; Delete a pregenerated man page. We'll build it ourselves. ;; Delete a pregenerated man page. We'll build it ourselves.
(delete-file "ncdu.1"))))) (delete-file "ncdu.1")))))
(build-system zig-build-system)
(arguments (arguments
(list (list
#:make-flags
#~(list (string-append "PREFIX=" #$output)
(string-append "CC=" #$(cc-for-target))
;; XXX By default, zig builds with -march=native!
(string-append "ZIG_FLAGS=-Drelease-fast -Dcpu=baseline"))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(delete 'configure) ; No configure script. (delete 'validate-runpath)
(add-before 'build 'pre-build
(lambda _
(setenv "ZIG_GLOBAL_CACHE_DIR"
(mkdtemp "/tmp/zig-cache-XXXXXX"))))
(add-after 'build 'build-manpage (add-after 'build 'build-manpage
(lambda _ (lambda _
(invoke "make" "doc"))) (invoke "make" "doc"))))))
(replace 'check (native-inputs (list perl))
(lambda* (#:key tests? #:allow-other-keys) (properties `((tunable? . #t)))))
(when tests?
(invoke "zig" "test" "build.zig")))))))
(native-inputs
(list perl zig-0.10))))
(define-public ncdu-2 (define-public ncdu-2
(deprecated-package "ncdu2" ncdu)) (deprecated-package "ncdu2" ncdu))

View file

@ -330,8 +330,9 @@ of your system.")
"1460d5lc780p3q38l3wc9jfr2a7zlyrcra0li65aynj738cam9yl")))) "1460d5lc780p3q38l3wc9jfr2a7zlyrcra0li65aynj738cam9yl"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f ; no test target `(#:tests? #f ; no test target
#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))
(string-append "CC=" ,(cc-for-target)))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'configure) ; there is no configure script (delete 'configure) ; there is no configure script
@ -339,8 +340,7 @@ of your system.")
(add-before 'build 'patch-ncursesw (add-before 'build 'patch-ncursesw
(lambda _ (lambda _
(substitute* "stfl_internals.h" (substitute* "stfl_internals.h"
(("ncursesw/") "")) (("ncursesw/") ""))))
#t))
(add-after 'install 'install-missing-symlink (add-after 'install 'install-missing-symlink
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))

View file

@ -2677,7 +2677,7 @@ that block port 22.")
(define-public iperf (define-public iperf
(package (package
(name "iperf") (name "iperf")
(version "3.15") (version "3.16")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2686,7 +2686,7 @@ that block port 22.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "10fzz3j2kx36yhqd0mvwlawvhdbcm0qc41i3f6jf6a5whm70177q")))) (base32 "0m8zhr050qgmkkaf0jgn2isrr7yyk8majx9c18pf1xsqpr00sxs6"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View file

@ -174,8 +174,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to ;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this. ;; start precisely like this.
(let ((version "1.4.0") (let ((version "1.4.0")
(commit "a60ff4611a8814d1f33d64af07401762afbcc597") (commit "aeb494322ca9dec4a4d66a7d063239c8536bd538")
(revision 14)) (revision 16))
(package (package
(name "guix") (name "guix")
@ -191,7 +191,7 @@
(commit commit))) (commit commit)))
(sha256 (sha256
(base32 (base32
"08czk2789y21cydg1xwwrmah8hjaprdnzvb993n7d7d70ccxk5kz")) "1xl769lkpvkjpvq4vwkxm4dp77sr9finvr6izvf4kvyi6s3hbsys"))
(file-name (string-append "guix-" version "-checkout")))) (file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
@ -524,7 +524,7 @@ $(prefix)/etc/openrc\n")))
("git-minimal" ,git-minimal) ;for 'guix perform-download' ("git-minimal" ,git-minimal) ;for 'guix perform-download'
("glibc-utf8-locales" ,glibc-utf8-locales))) ("glibc-utf8-locales" ,(libc-utf8-locales-for-target))))
(propagated-inputs (propagated-inputs
`(("guile-gnutls" ,guile-gnutls) `(("guile-gnutls" ,guile-gnutls)
;; Avahi requires "glib" which doesn't cross-compile yet. ;; Avahi requires "glib" which doesn't cross-compile yet.
@ -2052,7 +2052,7 @@ cp -r /tmp/locale/*/en_US.*")))
dbus ; for dbus-daemon dbus ; for dbus-daemon
gettext-minimal gettext-minimal
`(,glib "bin") ; for glib-mkenums + gdbus-codegen `(,glib "bin") ; for glib-mkenums + gdbus-codegen
glibc-utf8-locales (libc-utf8-locales-for-target)
gobject-introspection gobject-introspection
libcap libcap
pkg-config pkg-config

View file

@ -131,7 +131,7 @@ and they are executed on lists of files, hosts, users or other items.")
(define-public xe (define-public xe
(package (package
(name "xe") (name "xe")
(version "0.11") (version "1.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -140,7 +140,7 @@ and they are executed on lists of files, hosts, users or other items.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "04jr8f6jcijr0bsmn8ajm0aj35qh9my3xjsaq64h8lwg5bpyn29x")))) (base32 "1ijvf7q5pxk4rlj7p9q6fmpdqiwmc28gffkk6yg390k1a1z3msf9"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f `(#:tests? #f

View file

@ -4,6 +4,7 @@
;;; Copyright © 2020 Eric Bavier <bavier@posteo.net> ;;; Copyright © 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -46,6 +47,15 @@
(define %fpc-release-date "2021/05/19") (define %fpc-release-date "2021/05/19")
;;; FIXME: Bootstrap properly; these are prebuilt binaries. ;;; FIXME: Bootstrap properly; these are prebuilt binaries.
(define fpc-bootstrap-aarch64
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/freepascal/Linux/"
%fpc-version "/fpc-" %fpc-version ".aarch64-linux.tar"))
(sha256
(base32
"0lalar6qk04acb2j8p6654hlz0yj6zdab046zi82zf5mnvwp155k"))))
(define fpc-bootstrap-i386 (define fpc-bootstrap-i386
(origin (origin
(method url-fetch) (method url-fetch)
@ -55,6 +65,24 @@
(base32 (base32
"0n4r85dsr86zlk7r4hbd4nj14sda6rwgdgzxg4gj4q981fn80agn")))) "0n4r85dsr86zlk7r4hbd4nj14sda6rwgdgzxg4gj4q981fn80agn"))))
(define fpc-bootstrap-powerpc
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/freepascal/Linux/"
%fpc-version "/fpc-" %fpc-version ".powerpc-linux.tar"))
(sha256
(base32
"1zhdypm99bzs5706g4nxwajiadv82jwd87cr300lrivy1rzj5h4a"))))
(define fpc-bootstrap-powerpc64le
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/freepascal/Linux/"
%fpc-version "/fpc-" %fpc-version ".powerpc64le-linux.tar"))
(sha256
(base32
"12p3lmi1vn7agpw4pipp6ra8r85319sjcvbzh7z6kangmry7vic3"))))
(define fpc-bootstrap-x86_64 (define fpc-bootstrap-x86_64
(origin (origin
(method url-fetch) (method url-fetch)
@ -76,7 +104,8 @@
(sha256 (sha256
(base32 (base32
"07qna2pvlpa7j0i2wdixjxpizdvffv51nbr1waczk0xv8cq9kvw5")) "07qna2pvlpa7j0i2wdixjxpizdvffv51nbr1waczk0xv8cq9kvw5"))
(patches (search-patches "fpc-reproducibility.patch")) (patches (search-patches "fpc-reproducibility.patch"
"fpc-glibc-2.34-compat.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -90,16 +119,19 @@
(rename-file "install-man" "install/man") (rename-file "install-man" "install/man")
(delete-file "fpcsrc/tests/utils/dosbox/exitcode.exe"))))) (delete-file "fpcsrc/tests/utils/dosbox/exitcode.exe")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(supported-systems '("i686-linux" "x86_64-linux")) (supported-systems '("i686-linux" "x86_64-linux"
"powerpc-linux" "powerpc64le-linux"
"aarch64-linux"))
(inputs (inputs
(list expat glibc ncurses zlib)) (list expat glibc ncurses zlib))
(native-inputs (native-inputs
;; FPC is built with FPC, so we need bootstrap binaries. ;; FPC is built with FPC, so we need bootstrap binaries.
`(("fpc-binary" ,(match (or (%current-target-system) `(("fpc-binary" ,(match (or (%current-target-system)
(%current-system)) (%current-system))
("aarch64-linux" fpc-bootstrap-aarch64)
("i686-linux" fpc-bootstrap-i386) ("i686-linux" fpc-bootstrap-i386)
;;("powerpc64le-linux" fpc-bootstrap-ppc64le) ("powerpc-linux" fpc-bootstrap-powerpc)
;;("powerpc-linux" fpc-bootstrap-ppc) ("powerpc64le-linux" fpc-bootstrap-powerpc64le)
("x86_64-linux" fpc-bootstrap-x86_64) ("x86_64-linux" fpc-bootstrap-x86_64)
;; XXX: Wrong, but innocuous so long ;; XXX: Wrong, but innocuous so long
;; `supported-systems' is kept in sync. ;; `supported-systems' is kept in sync.
@ -109,11 +141,13 @@
#:phases #:phases
(let ((fpc-bootstrap-path (let ((fpc-bootstrap-path
(string-append (getcwd) "/" ,name "-" ,version "/fpc-bin")) (string-append (getcwd) "/" ,name "-" ,version "/fpc-bin"))
(arch ,(match (or (%current-target-system) (arch ,(cond
(%current-system)) ((target-aarch64?) "aarch64")
("i686-linux" "i386") ((target-x86-32?) "i386")
("x86_64-linux" "x86_64") ((target-ppc32?) "powerpc")
(_ "unknown")))) ((target-ppc64le?) "powerpc64")
((target-x86-64?) "x86_64")
(else "unknown"))))
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'unpack-bin (add-after 'unpack 'unpack-bin
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
@ -160,9 +194,14 @@
(search-input-file inputs ,(glibc-dynamic-linker))) (search-input-file inputs ,(glibc-dynamic-linker)))
(("/lib64/ld-linux-x86-64.so.2") (("/lib64/ld-linux-x86-64.so.2")
(search-input-file inputs ,(glibc-dynamic-linker))) (search-input-file inputs ,(glibc-dynamic-linker)))
; TODO: /lib/ld-linux-armhf.so.3 (("/lib/ld.so.1")
; TODO: /lib/ld-linux-aarch64.so.1 (search-input-file inputs ,(glibc-dynamic-linker)))
; TODO: /lib64/ld64.so.2 (("/lib64/ld64.so.[12]")
(search-input-file inputs ,(glibc-dynamic-linker)))
(("/lib/ld-linux(-armhf)?.so.3")
(search-input-file inputs ,(glibc-dynamic-linker)))
(("/lib/ld-linux-aarch64.so.1")
(search-input-file inputs ,(glibc-dynamic-linker)))
;; Add glibc to ld's search path. ;; Add glibc to ld's search path.
(("if \\(isdll\\) then") (("if \\(isdll\\) then")
(string-append (string-append
@ -192,9 +231,13 @@
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
;; This is the suffix of the ppc[arch] binary. ;; This is the suffix of the ppc[arch] binary.
(suffix (if (string= arch "x86_64") (suffix ,(cond
"x64" ((target-aarch64?) "a64")
"386")) ((target-x86-32?) "386")
((target-ppc32?) "ppc")
((target-ppc64le?) "ppc64")
((target-x86-64?) "x64")
(else "")))
(ppc (string-append "ppc" suffix))) (ppc (string-append "ppc" suffix)))
(invoke "make" "install" "NOGDB=1" (invoke "make" "install" "NOGDB=1"
(string-append "INSTALL_PREFIX=" out)) (string-append "INSTALL_PREFIX=" out))

View file

@ -168,6 +168,25 @@ human.")
#~(list "-DWITH_XC_DOCS=NO"))) #~(list "-DWITH_XC_DOCS=NO")))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'record-clipboard-programs
(lambda* (#:key inputs #:allow-other-keys)
;; Record the file names of clipboard programs invoked by
;; 'keepassxc-cli clip' and similar.
;;
;; Note: Use 'QString::fromUtf8' rather than 'QStringLiteral' so
;; that the store reference is stored as ASCII instead of
;; UTF-16, which would be invisible to the GC's scanner.
(substitute* "src/cli/Utils.cpp"
(("QStringLiteral\\(\"xclip\"\\)")
(string-append
"QString::fromUtf8(\""
(search-input-file inputs "bin/xclip")
"\")"))
(("QStringLiteral\\(\"wl-copy\"\\)")
(string-append
"QString::fromUtf8(\""
(search-input-file inputs "bin/wl-copy")
"\")")))))
(replace 'check (replace 'check
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(when tests? (when tests?
@ -199,6 +218,8 @@ human.")
qtx11extras qtx11extras
quazip-0 ; XC_KEESHARE quazip-0 ; XC_KEESHARE
readline readline
wl-clipboard ;for 'wl-copy'
xclip ;for 'xclip'
yubikey-personalization ; XC_YUBIKEY yubikey-personalization ; XC_YUBIKEY
zlib)) zlib))
(home-page "https://keepassxc.org") (home-page "https://keepassxc.org")

View file

@ -0,0 +1,190 @@
https://sources.debian.org/data/main/f/fpc/3.2.2%2Bdfsg-22/debian/patches/glibc2.34.patch
Description: Adjust startup code for glibc 2.34
Based on the corresponding changes made in glibc:
https://sourceware.org/git/?p=glibc.git;a=commit;h=035c012e32c11e84d64905efaf55e74f704d3668
Bug: https://gitlab.com/freepascal.org/fpc/source/-/issues/39295
Author: Graham Inggs <ginggs@debian.org>
Last-Update: 2022-08-12
--- a/fpcsrc/rtl/linux/powerpc64/cprt0.as
+++ b/fpcsrc/rtl/linux/powerpc64/cprt0.as
@@ -351,8 +351,8 @@
start_addresses:
.quad 0 /* was _SDA_BASE_ but not in 64-bit ABI*/
.quad main_stub
- .quad __libc_csu_init
- .quad __libc_csu_fini
+ .quad 0
+ .quad 0
.size start_adresses, .-start_addresses
/*
--- a/fpcsrc/rtl/linux/powerpc64/gprt0.as
+++ b/fpcsrc/rtl/linux/powerpc64/gprt0.as
@@ -351,8 +351,8 @@
start_addresses:
.quad 0 /* was _SDA_BASE_ but not in 64-bit ABI*/
.quad main_stub
- .quad __libc_csu_init
- .quad __libc_csu_fini
+ .quad 0
+ .quad 0
.size start_adresses, .-start_addresses
/*
--- a/fpcsrc/rtl/linux/aarch64/cprt0.as
+++ b/fpcsrc/rtl/linux/aarch64/cprt0.as
@@ -41,10 +41,8 @@
init, fini, rtld_fini, stack_end) */
adrp x0,:got:PASCALMAIN
ldr x0,[x0,#:got_lo12:PASCALMAIN]
- adrp x3,:got:__libc_csu_init
- ldr x3,[x3,#:got_lo12:__libc_csu_init]
- adrp x4,:got:__libc_csu_fini
- ldr x4,[x4,#:got_lo12:__libc_csu_fini]
+ mov x3, #0
+ mov x4, #0
bl __libc_start_main
/* This should never happen */
--- a/fpcsrc/rtl/linux/i386/si_c21.inc
+++ b/fpcsrc/rtl/linux/i386/si_c21.inc
@@ -35,8 +35,6 @@
{$asmmode att}
-procedure __libc_csu_init; cdecl; external;
-procedure __libc_csu_fini; cdecl; external;
procedure libc_start_main; external name '__libc_start_main';
procedure libc_exit(code: longint); cdecl; external name 'exit';
@@ -93,8 +91,8 @@
pushl %esp { stack_end }
pushl %edx { function to be registered with
atexit(), passed by loader }
- pushl $__libc_csu_fini
- pushl $__libc_csu_init
+ pushl $0
+ pushl $0
pushl %esi { Push second argument: argv. }
pushl %ecx { Push first argument: argc. }
--- a/fpcsrc/rtl/linux/x86_64/cprt0.as
+++ b/fpcsrc/rtl/linux/x86_64/cprt0.as
@@ -61,9 +61,8 @@
which grow downwards). */
pushq %rsp
- /* Pass address of our own entry points to .fini and .init. */
- movq __libc_csu_init@GOTPCREL(%rip), %rcx
- movq __libc_csu_fini@GOTPCREL(%rip), %r8
+ xorl %r8d, %r8d
+ xorl %ecx, %ecx
movq main_stub@GOTPCREL(%rip), %rdi
--- a/fpcsrc/rtl/linux/arm/cprt0.as
+++ b/fpcsrc/rtl/linux/arm/cprt0.as
@@ -82,10 +82,10 @@
/* Set up the other arguments in registers */
ldr a1, =PASCALMAIN
- ldr a4, =_init
+ ldr a4, = #0
/* Push fini */
- str ip, [sp, #-4]!
+ str a4, [sp, #-4]!
/* __libc_start_main (main, argc, argv, init, fini, rtld_fini, stack_end) */
--- a/fpcsrc/rtl/linux/powerpc64/si_g.inc
+++ b/fpcsrc/rtl/linux/powerpc64/si_g.inc
@@ -657,9 +657,6 @@
Process start/halt
******************************************************************************}
-procedure __libc_csu_init; cdecl; external;
-procedure __libc_csu_fini; cdecl; external;
-
procedure __libc_start_main(r3,r4,r5,r6,r7,r8,r9: pointer); cdecl; external;
type
@@ -745,8 +742,8 @@
end
= (sda_base: nil; {* was _SDA_BASE_ but not in 64-bit ABI }
main: @main_stub;
- libc_csu_init: @__libc_csu_init;
- libc_csu_fini: @__libc_csu_fini
+ libc_csu_init: pointer(0);
+ libc_csu_fini: pointer(0)
);
procedure call_libc_start_main(r3,r4,r5,r6,r7,r8,r9: pointer); cdecl;
--- a/fpcsrc/rtl/linux/powerpc64/si_c.inc
+++ b/fpcsrc/rtl/linux/powerpc64/si_c.inc
@@ -657,9 +657,6 @@
Process start/halt
******************************************************************************}
-procedure __libc_csu_init; cdecl; external;
-procedure __libc_csu_fini; cdecl; external;
-
procedure __libc_start_main(r3,r4,r5,r6,r7,r8,r9: pointer); cdecl; external;
var
@@ -724,8 +721,8 @@
end
= (sda_base: nil; {* was _SDA_BASE_ but not in 64-bit ABI }
main: @main_stub;
- libc_csu_init: @__libc_csu_init;
- libc_csu_fini: @__libc_csu_fini
+ libc_csu_init: pointer(0);
+ libc_csu_fini: pointer(0)
);
--- a/fpcsrc/rtl/linux/powerpc/cprt0.as
+++ b/fpcsrc/rtl/linux/powerpc/cprt0.as
@@ -35,8 +35,8 @@
start_addresses:
.long _SDA_BASE_
.long main_stub
- .long __libc_csu_init
- .long __libc_csu_fini
+ .long 0
+ .long 0
.size start_adresses, .-start_addresses
.section ".text"
--- a/fpcsrc/rtl/linux/mips/cprt0.as
+++ b/fpcsrc/rtl/linux/mips/cprt0.as
@@ -113,10 +113,9 @@
and $29, -2 * 4
subu $29, 32
- lw $7,%got(__libc_csu_init)($gp) /* init */
- lw $8,%got(__libc_csu_fini)($gp) /* fini */
+ move $7, $0
- sw $8, 16($29) /* fini */
+ sw $0, 16($29)
sw $2, 20($29) /* rtld_fini */
sw $29, 24($29) /* stack_end */
--- a/fpcsrc/rtl/linux/m68k/cprt0.as
+++ b/fpcsrc/rtl/linux/m68k/cprt0.as
@@ -41,8 +41,10 @@
pea (%sp) /* highest available stack address */
pea (%a1) /* termination function provided by kernel */
- pea __libc_csu_fini
- pea __libc_csu_init
+
+ clr.l -(%sp)
+ clr.l -(%sp)
+
pea (%a0) /* argv */
move.l %d0,-(%sp) /* argc */
pea PASCALMAIN

View file

@ -0,0 +1,39 @@
If the size of int is different from IGRAPH_INTEGER_SIZE, the integer size
passed to these vararg arguments is different from the assumed one,
leading to undefined behavior.
Submitted upstream: https://github.com/igraph/igraph/pull/2423
diff -ur a/examples/simple/igraph_union.c b/examples/simple/igraph_union.c
--- a/examples/simple/igraph_union.c
+++ b/examples/simple/igraph_union.c
@@ -103,7 +103,7 @@
igraph_vector_ptr_init(&glist, 10);
for (i = 0; i < igraph_vector_ptr_size(&glist); i++) {
VECTOR(glist)[i] = calloc(1, sizeof(igraph_t));
- igraph_vector_int_init_int_end(&v, -1, i, i + 1, 1, 0, -1);
+ igraph_vector_int_init_int_end(&v, -1, (int) i, (int) i + 1, 1, 0, -1);
igraph_create(VECTOR(glist)[i], &v, 0, IGRAPH_DIRECTED);
igraph_vector_int_destroy(&v);
}
@@ -123,7 +123,7 @@
igraph_vector_ptr_init(&glist, 10);
for (i = 0; i < igraph_vector_ptr_size(&glist); i++) {
VECTOR(glist)[i] = calloc(1, sizeof(igraph_t));
- igraph_vector_int_init_int_end(&v, -1, i, i + 1, 1, 0, -1);
+ igraph_vector_int_init_int_end(&v, -1, (int) i, (int) i + 1, 1, 0, -1);
igraph_create(VECTOR(glist)[i], &v, 0, IGRAPH_UNDIRECTED);
igraph_vector_int_destroy(&v);
}
diff -ur a/src/core/matrix.pmt b/src/core/matrix.pmt
--- a/src/core/matrix.pmt
+++ b/src/core/matrix.pmt
@@ -1863,7 +1863,7 @@
#ifdef FPRINTFUNC_ALIGNED
FPRINTFUNC_ALIGNED(file, VECTOR(column_width)[j], MATRIX(*m, i, j));
#else
- fprintf(file, format, VECTOR(column_width)[j], MATRIX(*m, i, j));
+ fprintf(file, format, (int) VECTOR(column_width)[j], MATRIX(*m, i, j));
#endif
}
fprintf(file, "\n");

View file

@ -1,505 +0,0 @@
diff --git a/lib/igt_aux.c b/lib/igt_aux.c
index 672d7d4b0..4c24b0928 100644
--- a/lib/igt_aux.c
+++ b/lib/igt_aux.c
@@ -52,8 +52,16 @@
#include <assert.h>
#include <grp.h>
-#include <proc/readproc.h>
-#include <libudev.h>
+#ifdef HAVE_LIBPROCPS
+# include <proc/readproc.h>
+#else
+# include <libproc2/pids.h>
+#endif
+
+#include <dirent.h>
+#ifdef __linux__
+# include <libudev.h>
+#endif
#include "drmtest.h"
#include "i915_drm.h"
@@ -1217,6 +1225,7 @@ void igt_unlock_mem(void)
*/
int igt_is_process_running(const char *comm)
{
+#if HAVE_LIBPROCPS
PROCTAB *proc;
proc_t *proc_info;
bool found = false;
@@ -1235,6 +1244,26 @@ int igt_is_process_running(const char *comm)
closeproc(proc);
return found;
+#else
+ enum pids_item Item[] = { PIDS_CMD };
+ struct pids_info *info = NULL;
+ struct pids_stack *stack;
+ char *pid_comm;
+ bool found = false;
+
+ if (procps_pids_new(&info, Item, 1) < 0)
+ return false;
+ while ((stack = procps_pids_get(info, PIDS_FETCH_TASKS_ONLY))) {
+ pid_comm = PIDS_VAL(0, str, stack, info);
+ if (!strncasecmp(pid_comm, comm, strlen(pid_comm))) {
+ found = true;
+ break;
+ }
+ }
+
+ procps_pids_unref(&info);
+ return found;
+#endif
}
/**
@@ -1251,6 +1280,7 @@ int igt_is_process_running(const char *comm)
*/
int igt_terminate_process(int sig, const char *comm)
{
+#if HAVE_LIBPROCPS
PROCTAB *proc;
proc_t *proc_info;
int err = 0;
@@ -1272,6 +1302,28 @@ int igt_terminate_process(int sig, const char *comm)
closeproc(proc);
return err;
+#else
+ enum pids_item Items[] = { PIDS_ID_PID, PIDS_CMD };
+ struct pids_info *info = NULL;
+ struct pids_stack *stack;
+ char *pid_comm;
+ int pid;
+ int err = 0;
+
+ if (procps_pids_new(&info, Items, 2) < 0)
+ return -errno;
+ while ((stack = procps_pids_get(info, PIDS_FETCH_TASKS_ONLY))) {
+ pid = PIDS_VAL(0, s_int, stack, info);
+ pid_comm = PIDS_VAL(1, str, stack, info);
+ if (!strncasecmp(pid_comm, comm, strlen(pid_comm))) {
+ if (kill(pid, sig) < 0)
+ err = -errno;
+ break;
+ }
+ }
+ procps_pids_unref(&info);
+ return err;
+#endif
}
struct pinfo {
@@ -1341,9 +1393,9 @@ igt_show_stat_header(void)
}
static void
-igt_show_stat(proc_t *info, int *state, const char *fn)
+igt_show_stat(const pid_t tid, const char *cmd, int *state, const char *fn)
{
- struct pinfo p = { .pid = info->tid, .comm = info->cmd, .fn = fn };
+ struct pinfo p = { .pid = tid, .comm = cmd, .fn = fn };
if (!*state)
igt_show_stat_header();
@@ -1353,7 +1405,7 @@ igt_show_stat(proc_t *info, int *state, const char *fn)
}
static void
-__igt_lsof_fds(proc_t *proc_info, int *state, char *proc_path, const char *dir)
+__igt_lsof_fds(const pid_t tid, const char *cmd, int *state, char *proc_path, const char *dir)
{
struct dirent *d;
struct stat st;
@@ -1400,7 +1452,7 @@ again:
dirn = dirname(copy_fd_lnk);
if (!strncmp(dir, dirn, strlen(dir)))
- igt_show_stat(proc_info, state, fd_lnk);
+ igt_show_stat(tid, cmd, state, fd_lnk);
free(copy_fd_lnk);
free(fd_lnk);
@@ -1416,13 +1468,13 @@ again:
static void
__igt_lsof(const char *dir)
{
- PROCTAB *proc;
- proc_t *proc_info;
-
char path[30];
char *name_lnk;
struct stat st;
int state = 0;
+#ifdef HAVE_LIBPROCPS
+ PROCTAB *proc;
+ proc_t *proc_info;
proc = openproc(PROC_FILLCOM | PROC_FILLSTAT | PROC_FILLARG);
igt_assert(proc != NULL);
@@ -1443,19 +1495,56 @@ __igt_lsof(const char *dir)
name_lnk[read] = '\0';
if (!strncmp(dir, name_lnk, strlen(dir)))
- igt_show_stat(proc_info, &state, name_lnk);
+ igt_show_stat(proc_info->tid, proc_info->cmd, &state, name_lnk);
/* check also fd, seems that lsof(8) doesn't look here */
memset(path, 0, sizeof(path));
snprintf(path, sizeof(path), "/proc/%d/fd", proc_info->tid);
- __igt_lsof_fds(proc_info, &state, path, dir);
+ __igt_lsof_fds(proc_info->tid, proc_info->cmd, &state, path, dir);
free(name_lnk);
freeproc(proc_info);
}
closeproc(proc);
+#else
+ enum pids_item Items[] = { PIDS_ID_PID, PIDS_CMD };
+ struct pids_info *info = NULL;
+ struct pids_stack *stack;
+
+ if (procps_pids_new(&info, Items, 2) < 0)
+ return;
+ while ((stack = procps_pids_get(info, PIDS_FETCH_TASKS_ONLY))) {
+ ssize_t read;
+ int tid = PIDS_VAL(0, s_int, stack, info);
+ char *pid_comm = PIDS_VAL(1, str, stack, info);
+
+ /* check current working directory */
+ memset(path, 0, sizeof(path));
+ snprintf(path, sizeof(path), "/proc/%d/cwd", tid);
+
+ if (stat(path, &st) == -1)
+ continue;
+
+ name_lnk = malloc(st.st_size + 1);
+
+ igt_assert((read = readlink(path, name_lnk, st.st_size + 1)));
+ name_lnk[read] = '\0';
+
+ if (!strncmp(dir, name_lnk, strlen(dir)))
+ igt_show_stat(tid, pid_comm, &state, name_lnk);
+
+ /* check also fd, seems that lsof(8) doesn't look here */
+ memset(path, 0, sizeof(path));
+ snprintf(path, sizeof(path), "/proc/%d/fd", tid);
+
+ __igt_lsof_fds(tid, pid_comm, &state, path, dir);
+
+ free(name_lnk);
+ }
+ procps_pids_unref(&info);
+#endif
}
/**
@@ -1490,7 +1579,7 @@ igt_lsof(const char *dpath)
free(sanitized);
}
-static void pulseaudio_unload_module(proc_t *proc_info)
+static void pulseaudio_unload_module(const uid_t euid, const gid_t egid)
{
struct igt_helper_process pa_proc = {};
char xdg_dir[PATH_MAX];
@@ -1498,14 +1587,14 @@ static void pulseaudio_unload_module(proc_t *proc_info)
struct passwd *pw;
igt_fork_helper(&pa_proc) {
- pw = getpwuid(proc_info->euid);
+ pw = getpwuid(euid);
homedir = pw->pw_dir;
- snprintf(xdg_dir, sizeof(xdg_dir), "/run/user/%d", proc_info->euid);
+ snprintf(xdg_dir, sizeof(xdg_dir), "/run/user/%d", euid);
igt_info("Request pulseaudio to stop using audio device\n");
- setgid(proc_info->egid);
- setuid(proc_info->euid);
+ setgid(egid);
+ setuid(euid);
clearenv();
setenv("HOME", homedir, 1);
setenv("XDG_RUNTIME_DIR",xdg_dir, 1);
@@ -1524,10 +1613,13 @@ static void pipewire_reserve_wait(void)
char xdg_dir[PATH_MAX];
const char *homedir;
struct passwd *pw;
- proc_t *proc_info;
- PROCTAB *proc;
+ int tid = 0, euid, egid;
+#ifdef HAVE_LIBPROCPS
igt_fork_helper(&pw_reserve_proc) {
+ proc_t *proc_info;
+ PROCTAB *proc;
+
igt_info("Preventing pipewire-pulse to use the audio drivers\n");
proc = openproc(PROC_FILLCOM | PROC_FILLSTAT | PROC_FILLARG);
@@ -1540,19 +1632,45 @@ static void pipewire_reserve_wait(void)
}
closeproc(proc);
+ tid = proc_info->tid;
+ euid = proc_info->euid;
+ egid = proc_info->egid;
+ freeproc(proc_info);
+#else
+ igt_fork_helper(&pw_reserve_proc) {
+ enum pids_item Items[] = { PIDS_ID_PID, PIDS_ID_EUID, PIDS_ID_EGID };
+ enum rel_items { EU_PID, EU_EUID, EU_EGID };
+ struct pids_info *info = NULL;
+ struct pids_stack *stack;
+
+ igt_info("Preventing pipewire-pulse to use the audio drivers\n");
+
+ if (procps_pids_new(&info, Items, 3) < 0) {
+ igt_info("error getting pids: %d\n", errno);
+ exit(errno);
+ }
+ while ((stack = procps_pids_get(info, PIDS_FETCH_TASKS_ONLY))) {
+ tid = PIDS_VAL(EU_PID, s_int, stack, info);
+ if (pipewire_pulse_pid == tid)
+ break;
+ }
+ euid = PIDS_VAL(EU_EUID, s_int, stack, info);
+ egid = PIDS_VAL(EU_EGID, s_int, stack, info);
+ procps_pids_unref(&info);
+#endif
+
/* Sanity check: if it can't find the process, it means it has gone */
- if (pipewire_pulse_pid != proc_info->tid)
+ if (pipewire_pulse_pid != tid)
exit(0);
- pw = getpwuid(proc_info->euid);
+ pw = getpwuid(euid);
homedir = pw->pw_dir;
- snprintf(xdg_dir, sizeof(xdg_dir), "/run/user/%d", proc_info->euid);
- setgid(proc_info->egid);
- setuid(proc_info->euid);
+ snprintf(xdg_dir, sizeof(xdg_dir), "/run/user/%d", euid);
+ setgid(egid);
+ setuid(euid);
clearenv();
setenv("HOME", homedir, 1);
setenv("XDG_RUNTIME_DIR",xdg_dir, 1);
- freeproc(proc_info);
/*
* pw-reserve will run in background. It will only exit when
@@ -1570,9 +1688,7 @@ static void pipewire_reserve_wait(void)
int pipewire_pulse_start_reserve(void)
{
bool is_pw_reserve_running = false;
- proc_t *proc_info;
int attempts = 0;
- PROCTAB *proc;
if (!pipewire_pulse_pid)
return 0;
@@ -1584,6 +1700,10 @@ int pipewire_pulse_start_reserve(void)
* pipewire version 0.3.50 or upper.
*/
for (attempts = 0; attempts < PIPEWIRE_RESERVE_MAX_TIME; attempts++) {
+#ifdef HAVE_LIBPROCPS
+ PROCTAB *proc;
+ proc_t *proc_info;
+
usleep(1000);
proc = openproc(PROC_FILLCOM | PROC_FILLSTAT | PROC_FILLARG);
igt_assert(proc != NULL);
@@ -1598,6 +1718,24 @@ int pipewire_pulse_start_reserve(void)
freeproc(proc_info);
}
closeproc(proc);
+#else
+ enum pids_item Items[] = { PIDS_ID_PID, PIDS_CMD };
+ struct pids_info *info = NULL;
+ struct pids_stack *stack;
+
+ usleep(1000);
+
+ if (procps_pids_new(&info, Items, 2) < 0)
+ return 1;
+ while ((stack = procps_pids_get(info, PIDS_FETCH_TASKS_ONLY))) {
+ if (!strcmp(PIDS_VAL(1, str, stack, info), "pw-reserve")) {
+ is_pw_reserve_running = true;
+ pipewire_pw_reserve_pid = PIDS_VAL(0, s_int, stack, info);
+ break;
+ }
+ }
+ procps_pids_unref(&info);
+#endif
if (is_pw_reserve_running)
break;
}
@@ -1645,7 +1783,7 @@ void pipewire_pulse_stop_reserve(void)
* If the check fails, it means that the process can simply be killed.
*/
static int
-__igt_lsof_audio_and_kill_proc(proc_t *proc_info, char *proc_path)
+__igt_lsof_audio_and_kill_proc(const pid_t tid, const char *cmd, const uid_t euid, const gid_t egid, char *proc_path)
{
const char *audio_dev = "/dev/snd/";
char path[PATH_MAX * 2];
@@ -1670,10 +1808,10 @@ __igt_lsof_audio_and_kill_proc(proc_t *proc_info, char *proc_path)
* 2) unload/unbind the the audio driver(s);
* 3) stop the pw-reserve thread.
*/
- if (!strcmp(proc_info->cmd, "pipewire-pulse")) {
+ if (!strcmp(cmd, "pipewire-pulse")) {
igt_info("process %d (%s) is using audio device. Should be requested to stop using them.\n",
- proc_info->tid, proc_info->cmd);
- pipewire_pulse_pid = proc_info->tid;
+ tid, cmd);
+ pipewire_pulse_pid = tid;
return 0;
}
/*
@@ -1685,9 +1823,9 @@ __igt_lsof_audio_and_kill_proc(proc_t *proc_info, char *proc_path)
* will respawn them. So, just ignore here, they'll honor pw-reserve,
* when the time comes.
*/
- if (!strcmp(proc_info->cmd, "pipewire-media-session"))
+ if (!strcmp(cmd, "pipewire-media-session"))
return 0;
- if (!strcmp(proc_info->cmd, "wireplumber"))
+ if (!strcmp(cmd, "wireplumber"))
return 0;
dp = opendir(proc_path);
@@ -1723,22 +1861,22 @@ __igt_lsof_audio_and_kill_proc(proc_t *proc_info, char *proc_path)
* enough to unbind audio modules and won't cause race issues
* with systemd trying to reload it.
*/
- if (!strcmp(proc_info->cmd, "pulseaudio")) {
- pulseaudio_unload_module(proc_info);
+ if (!strcmp(cmd, "pulseaudio")) {
+ pulseaudio_unload_module(euid, egid);
break;
}
/* For all other processes, just kill them */
igt_info("process %d (%s) is using audio device. Should be terminated.\n",
- proc_info->tid, proc_info->cmd);
+ tid, cmd);
- if (kill(proc_info->tid, SIGTERM) < 0) {
+ if (kill(tid, SIGTERM) < 0) {
igt_info("Fail to terminate %s (pid: %d) with SIGTERM\n",
- proc_info->cmd, proc_info->tid);
- if (kill(proc_info->tid, SIGABRT) < 0) {
+ cmd, tid);
+ if (kill(tid, SIGABRT) < 0) {
fail++;
igt_info("Fail to terminate %s (pid: %d) with SIGABRT\n",
- proc_info->cmd, proc_info->tid);
+ cmd, tid);
}
}
@@ -1760,23 +1898,47 @@ int
igt_lsof_kill_audio_processes(void)
{
char path[PATH_MAX];
+ int fail = 0;
+
+#ifdef HAVE_LIBPROCPS
proc_t *proc_info;
PROCTAB *proc;
- int fail = 0;
proc = openproc(PROC_FILLCOM | PROC_FILLSTAT | PROC_FILLARG);
igt_assert(proc != NULL);
pipewire_pulse_pid = 0;
-
while ((proc_info = readproc(proc, NULL))) {
if (snprintf(path, sizeof(path), "/proc/%d/fd", proc_info->tid) < 1)
fail++;
else
- fail += __igt_lsof_audio_and_kill_proc(proc_info, path);
+ fail += __igt_lsof_audio_and_kill_proc(proc_info->tid, proc_info->cmd, proc_info->euid, proc_info->egid, path);
freeproc(proc_info);
}
closeproc(proc);
+#else
+ enum pids_item Items[] = { PIDS_ID_PID, PIDS_CMD, PIDS_ID_EUID, PIDS_ID_EGID };
+ enum rel_items { EU_PID, EU_CMD, EU_EUID, EU_EGID };
+ struct pids_info *info = NULL;
+ struct pids_stack *stack;
+ pid_t tid;
+
+ if (procps_pids_new(&info, Items, 4) < 0)
+ return 1;
+ while ((stack = procps_pids_get(info, PIDS_FETCH_TASKS_ONLY))) {
+ tid = PIDS_VAL(EU_PID, s_int, stack, info);
+
+ if (snprintf(path, sizeof(path), "/proc/%d/fd", tid) < 1)
+ fail++;
+ else
+ fail += __igt_lsof_audio_and_kill_proc(tid,
+ PIDS_VAL(EU_CMD, str, stack, info),
+ PIDS_VAL(EU_EUID, s_int, stack, info),
+ PIDS_VAL(EU_EGID, s_int, stack, info),
+ path);
+ }
+ procps_pids_unref(&info);
+#endif
return fail;
}
diff --git a/lib/meson.build b/lib/meson.build
index 85f100f75..55efdc83b 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -114,7 +114,6 @@ lib_deps = [
libdrm,
libdw,
libkmod,
- libprocps,
libudev,
math,
pciaccess,
@@ -178,6 +177,12 @@ if chamelium.found()
lib_sources += 'monitor_edids/monitor_edids_helper.c'
endif
+if libprocps.found()
+ lib_deps += libprocps
+else
+ lib_deps += libproc2
+endif
+
if get_option('srcdir') != ''
srcdir = join_paths(get_option('srcdir'), 'tests')
else
diff --git a/meson.build b/meson.build
index 1c872cc9c..0487158dc 100644
--- a/meson.build
+++ b/meson.build
@@ -125,7 +125,15 @@ build_info += 'With libdrm: ' + ','.join(libdrm_info)
pciaccess = dependency('pciaccess', version : '>=0.10')
libkmod = dependency('libkmod')
-libprocps = dependency('libprocps', required : true)
+libprocps = dependency('libprocps', required : false)
+libproc2 = dependency('libproc2', required : false)
+if libprocps.found()
+ config.set('HAVE_LIBPROCPS', 1)
+elif libproc2.found()
+ config.set('HAVE_LIBPROC2', 1)
+else
+ error('Either libprocps or libproc2 is required')
+endif
libunwind = dependency('libunwind', required : get_option('libunwind'))
build_info += 'With libunwind: @0@'.format(libunwind.found())

View file

@ -1,39 +0,0 @@
From 98a7d90ee258ceef9c70b0b2955d0458ec46f048 Mon Sep 17 00:00:00 2001
From: elsid <elsid.mail@gmail.com>
Date: Fri, 24 Sep 2021 19:40:29 +0200
Subject: [PATCH] Assume SIGSTKSZ is not a constant
SIGSTKSZ is not defined as constant since glibc 2.34:
https://sourceware.org/git/?p=glibc.git;a=commit;h=6c57d320484988e87e446e2e60ce42816bf51d53
---
components/crashcatcher/crashcatcher.cpp | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/components/crashcatcher/crashcatcher.cpp b/components/crashcatcher/crashcatcher.cpp
index 86571e1e3a..c828e1ca81 100644
--- a/components/crashcatcher/crashcatcher.cpp
+++ b/components/crashcatcher/crashcatcher.cpp
@@ -56,8 +56,6 @@ static const char exec_err[] = "!!! Failed to exec debug process\n";
static char argv0[PATH_MAX];
-static char altstack[SIGSTKSZ];
-
static struct {
int signum;
@@ -475,9 +473,10 @@ int crashCatcherInstallHandlers(int argc, char **argv, int num_signals, int *sig
/* Set an alternate signal stack so SIGSEGVs caused by stack overflows
* still run */
+ static char* altstack = new char [SIGSTKSZ];
altss.ss_sp = altstack;
altss.ss_flags = 0;
- altss.ss_size = sizeof(altstack);
+ altss.ss_size = SIGSTKSZ;
sigaltstack(&altss, nullptr);
memset(&sa, 0, sizeof(sa));
--
GitLab

View file

@ -0,0 +1,51 @@
From cddbfa3ade23695dd9996f6e208615702a3a42e1 Mon Sep 17 00:00:00 2001
From: Liliana Marie Prikler <liliana.prikler@ist.tugraz.at>
Date: Thu, 23 Nov 2023 09:53:38 +0100
Subject: [PATCH 1/2] normalization: No longer work around compiler bugs in
Precondition.
To: Patrick Lühne <patrick-github@luehne.de>
Cc: Martin Gebser <martin.gebser@aau.at>
Newer versions of GCC (such as GCC 11) point out that std::move is meaningless
in this position, so remove it.
---
lib/pddl/src/pddl/detail/normalization/Precondition.cpp | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/lib/pddl/src/pddl/detail/normalization/Precondition.cpp b/lib/pddl/src/pddl/detail/normalization/Precondition.cpp
index 4eebfee..4297e52 100644
--- a/lib/pddl/src/pddl/detail/normalization/Precondition.cpp
+++ b/lib/pddl/src/pddl/detail/normalization/Precondition.cpp
@@ -83,8 +83,7 @@ normalizedAST::Literal normalizeNested(ast::AndPointer<ast::Precondition> &and_,
derivedPredicate->declaration->precondition = std::make_unique<normalizedAST::And<normalizedAST::Literal>>(std::move(normalizedArguments));
- // TODO: investigate, could be a compiler bug
- return std::move(derivedPredicate);
+ return derivedPredicate;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -112,8 +111,7 @@ normalizedAST::Literal normalizeNested(ast::ExistsPointer<ast::Precondition> &ex
return normalizeTopLevel(x, normalizationContext);
});
- // TODO: investigate, could be a compiler bug
- return std::move(derivedPredicate);
+ return derivedPredicate;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -174,8 +172,7 @@ normalizedAST::Literal normalizeNested(ast::OrPointer<ast::Precondition> &or_, d
derivedPredicate->declaration->precondition = std::make_unique<normalizedAST::Or<normalizedAST::Literal>>(std::move(normalizedArguments));
- // TODO: investigate, could be a compiler bug
- return std::move(derivedPredicate);
+ return derivedPredicate;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
--
2.41.0

View file

@ -0,0 +1,26 @@
From 95c6a506e14cf248e2a3cae2ed3f41ed1eedf278 Mon Sep 17 00:00:00 2001
From: Liliana Marie Prikler <liliana.prikler@ist.tugraz.at>
Date: Thu, 23 Nov 2023 09:53:38 +0100
Subject: [PATCH 2/2] app: Add missing #include <iostream>.
To: Patrick Lühne <patrick-github@luehne.de>
Cc: Martin Gebser <martin.gebser@aau.at>
---
app/include/plasp-app/Command.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/app/include/plasp-app/Command.h b/app/include/plasp-app/Command.h
index 5755ee3..671804b 100644
--- a/app/include/plasp-app/Command.h
+++ b/app/include/plasp-app/Command.h
@@ -1,6 +1,7 @@
#ifndef __PLASP_APP__COMMAND_H
#define __PLASP_APP__COMMAND_H
+#include <iostream> // std::cout, std::endl
#include <tuple>
#include <cxxopts.hpp>
--
2.41.0

View file

@ -0,0 +1,48 @@
From 567558a4eb9b73ab30f9e469b36091eccf445f80 Mon Sep 17 00:00:00 2001
From: Felix Gruber <felgru@posteo.net>
Date: Sun, 23 Apr 2023 16:48:59 +0200
Subject: [PATCH] Fix use of perfplot.
data tuples are unpacked by perfplot before it calls the kernel
functions.
---
tests/test_dot.py | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/tests/test_dot.py b/tests/test_dot.py
index a8160fe..51307ad 100644
--- a/tests/test_dot.py
+++ b/tests/test_dot.py
@@ -76,10 +76,10 @@ def test_speed_comparison1(n_range=None):
perfplot.plot(
setup=lambda n: (np.random.rand(n, 100), np.random.rand(100, n)),
kernels=[
- lambda xy: np.dot(*xy),
- lambda xy: accupy.kdot(*xy, K=2),
- lambda xy: accupy.kdot(*xy, K=3),
- lambda xy: accupy.fdot(*xy),
+ lambda x, y: np.dot(x, y),
+ lambda x, y: accupy.kdot(x, y, K=2),
+ lambda x, y: accupy.kdot(x, y, K=3),
+ lambda x, y: accupy.fdot(x, y),
],
labels=["np.dot", "accupy.kdot[2]", "accupy.kdot[3]", "accupy.fdot"],
n_range=n_range,
@@ -96,10 +96,10 @@ def test_speed_comparison2(n_range=None):
perfplot.plot(
setup=lambda n: (np.random.rand(100, n), np.random.rand(n, 100)),
kernels=[
- lambda xy: np.dot(*xy),
- lambda xy: accupy.kdot(*xy, K=2),
- lambda xy: accupy.kdot(*xy, K=3),
- lambda xy: accupy.fdot(*xy),
+ lambda x, y: np.dot(x, y),
+ lambda x, y: accupy.kdot(x, y, K=2),
+ lambda x, y: accupy.kdot(x, y, K=3),
+ lambda x, y: accupy.fdot(x, y),
],
labels=["np.dot", "accupy.kdot[2]", "accupy.kdot[3]", "accupy.fdot"],
n_range=n_range,
--
2.39.2

View file

@ -0,0 +1,113 @@
From 1da1ed24cfba8a051b6c2f452a67ebfee77ca040 Mon Sep 17 00:00:00 2001
From: Felix Gruber <felgru@posteo.net>
Date: Sun, 23 Apr 2023 15:42:19 +0200
Subject: [PATCH] Use dufte style from matplotx.
The stand-alone dufte package has been deprecated in favor of the dufte
style that has been integrated into matplotx.
---
tests/test_dot.py | 10 +++++-----
tests/test_sums.py | 12 ++++++------
tox.ini | 2 +-
3 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/tests/test_dot.py b/tests/test_dot.py
index 0a40a0c..a8160fe 100644
--- a/tests/test_dot.py
+++ b/tests/test_dot.py
@@ -1,5 +1,5 @@
-import dufte
import matplotlib.pyplot as plt
+import matplotx
import numpy as np
import perfplot
import pytest
@@ -33,7 +33,7 @@ def test_fdot(cond):
def test_accuracy_comparison_illcond(target_cond=None):
- plt.style.use(dufte.style)
+ plt.style.use(matplotx.styles.dufte)
if target_cond is None:
target_cond = [10 ** k for k in range(2)]
@@ -61,13 +61,13 @@ def test_accuracy_comparison_illcond(target_cond=None):
for label, d in zip(labels, data.T):
plt.loglog(condition_numbers, d, label=label)
- dufte.legend()
+ matplotx.line_labels()
plt.xlabel("condition number")
- dufte.ylabel("relative error")
+ matplotx.ylabel_top("relative error")
def test_speed_comparison1(n_range=None):
- plt.style.use(dufte.style)
+ plt.style.use(matplotx.styles.dufte)
if n_range is None:
n_range = [2 ** k for k in range(2)]
diff --git a/tests/test_sums.py b/tests/test_sums.py
index 1c0f6b0..8cd9ddb 100644
--- a/tests/test_sums.py
+++ b/tests/test_sums.py
@@ -1,5 +1,5 @@
-import dufte
import matplotlib.pyplot as plt
+import matplotx
import numpy as np
import perfplot
import pytest
@@ -32,7 +32,7 @@ def test_fsum(cond):
def test_accuracy_comparison_illcond(target_conds=None):
- plt.style.use(dufte.style)
+ plt.style.use(matplotx.styles.dufte)
if target_conds is None:
target_conds = [10 ** k for k in range(1, 2)]
@@ -71,14 +71,14 @@ def test_accuracy_comparison_illcond(target_conds=None):
for label, color, d in zip(labels, colors, data.T):
plt.loglog(condition_numbers, d, label=label, color=color)
- dufte.legend()
+ matplotx.line_labels()
plt.xlabel("condition number")
- dufte.ylabel("relative error")
+ matplotx.ylabel_top("relative error")
# plt.gca().set_aspect(1.3)
def test_speed_comparison1(n_range=None):
- plt.style.use(dufte.style)
+ plt.style.use(matplotx.styles.dufte)
if n_range is None:
n_range = [2 ** k for k in range(2)]
@@ -109,7 +109,7 @@ def test_speed_comparison1(n_range=None):
def test_speed_comparison2(n_range=None):
- plt.style.use(dufte.style)
+ plt.style.use(matplotx.styles.dufte)
if n_range is None:
n_range = [2 ** k for k in range(2)]
diff --git a/tox.ini b/tox.ini
index 79a53ec..524b3bc 100644
--- a/tox.ini
+++ b/tox.ini
@@ -4,7 +4,7 @@ isolated_build = True
[testenv]
deps =
- dufte
+ matplotx
perfplot
pytest
pytest-cov
--
2.39.2

View file

@ -0,0 +1,35 @@
From a885c54d54e71a089b916502f1c222ef14a07a93 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Brunner?= <stephane.brunner@camptocamp.com>
Date: Mon, 15 Aug 2022 10:41:40 +0200
Subject: [PATCH] Fix the tests
---
tests/test_sphinx_prompt.py | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/tests/test_sphinx_prompt.py b/tests/test_sphinx_prompt.py
index 47d16c5..6a31798 100644
--- a/tests/test_sphinx_prompt.py
+++ b/tests/test_sphinx_prompt.py
@@ -1,3 +1,7 @@
+from io import StringIO
+
+import docutils.statemachine
+import docutils.utils
import pytest
sphinx_prompt = __import__("sphinx_prompt")
@@ -150,6 +154,12 @@
def test(arguments, options, content, expected):
sphinx_prompt._cache.next_index = 1
sphinx_prompt._cache.prompts.clear()
- directive = sphinx_prompt.PromptDirective("prompt", arguments, options, content, 0, 0, "", None, None)
+ stream = StringIO()
+ reporter = docutils.utils.Reporter("test data", 2, 4, stream, 1)
+ statemachine = docutils.statemachine.StateMachine([], None)
+ setattr(statemachine, "reporter", reporter)
+ directive = sphinx_prompt.PromptDirective(
+ "prompt", arguments, options, content, 0, 0, "", None, statemachine
+ )
result = directive.run()
assert result[0].astext() == expected

Some files were not shown because too many files have changed in this diff Show more