me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into gnome-team

master
Liliana Marie Prikler 2023-12-20 00:05:21 +01:00
commit 24d4d6fdd6
No known key found for this signature in database
GPG Key ID: 442A84B8C70E2F87
175 changed files with 14688 additions and 50754 deletions

View File

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

View File

@ -138,55 +138,58 @@ MODULES = \
guix/ipfs.scm \
guix/platform.scm \
guix/platforms/arm.scm \
guix/platforms/avr.scm \
guix/platforms/mips.scm \
guix/platforms/powerpc.scm \
guix/platforms/riscv.scm \
guix/platforms/x86.scm \
guix/build-system.scm \
guix/build-system/agda.scm \
guix/build-system/agda.scm \
guix/build-system/android-ndk.scm \
guix/build-system/ant.scm \
guix/build-system/asdf.scm \
guix/build-system/cargo.scm \
guix/build-system/channel.scm \
guix/build-system/chicken.scm \
guix/build-system/clojure.scm \
guix/build-system/channel.scm \
guix/build-system/chicken.scm \
guix/build-system/clojure.scm \
guix/build-system/cmake.scm \
guix/build-system/copy.scm \
guix/build-system/composer.scm \
guix/build-system/dub.scm \
guix/build-system/dune.scm \
guix/build-system/elm.scm \
guix/build-system/emacs.scm \
guix/build-system/font.scm \
guix/build-system/go.scm \
guix/build-system/meson.scm \
guix/build-system/mozilla.scm \
guix/build-system/minify.scm \
guix/build-system/minetest.scm \
guix/build-system/asdf.scm \
guix/build-system/copy.scm \
guix/build-system/glib-or-gtk.scm \
guix/build-system/gnu.scm \
guix/build-system/go.scm \
guix/build-system/guile.scm \
guix/build-system/haskell.scm \
guix/build-system/haskell.scm \
guix/build-system/julia.scm \
guix/build-system/linux-module.scm \
guix/build-system/maven.scm \
guix/build-system/meson.scm \
guix/build-system/minetest.scm \
guix/build-system/minify.scm \
guix/build-system/mix.scm \
guix/build-system/mozilla.scm \
guix/build-system/node.scm \
guix/build-system/ocaml.scm \
guix/build-system/perl.scm \
guix/build-system/pyproject.scm \
guix/build-system/python.scm \
guix/build-system/renpy.scm \
guix/build-system/ocaml.scm \
guix/build-system/qt.scm \
guix/build-system/waf.scm \
guix/build-system/r.scm \
guix/build-system/rakudo.scm \
guix/build-system/rebar.scm \
guix/build-system/renpy.scm \
guix/build-system/ruby.scm \
guix/build-system/scons.scm \
guix/build-system/texlive.scm \
guix/build-system/texlive.scm \
guix/build-system/tree-sitter.scm \
guix/build-system/trivial.scm \
guix/build-system/trivial.scm \
guix/build-system/vim.scm \
guix/build-system/waf.scm \
guix/build-system/zig.scm \
guix/ftp-client.scm \
guix/http-client.scm \
@ -210,6 +213,7 @@ MODULES = \
guix/build/cargo-utils.scm \
guix/build/chicken-build-system.scm \
guix/build/cmake-build-system.scm \
guix/build/composer-build-system.scm \
guix/build/dub-build-system.scm \
guix/build/dune-build-system.scm \
guix/build/elm-build-system.scm \
@ -231,6 +235,7 @@ MODULES = \
guix/build/guile-build-system.scm \
guix/build/maven-build-system.scm \
guix/build/minetest-build-system.scm \
guix/build/mix-build-system.scm \
guix/build/node-build-system.scm \
guix/build/perl-build-system.scm \
guix/build/pyproject-build-system.scm \
@ -280,6 +285,7 @@ MODULES = \
guix/search-paths.scm \
guix/packages.scm \
guix/import/cabal.scm \
guix/import/composer.scm \
guix/import/cpan.scm \
guix/import/cran.scm \
guix/import/crate.scm \
@ -338,6 +344,7 @@ MODULES = \
guix/scripts/home/import.scm \
guix/scripts/lint.scm \
guix/scripts/challenge.scm \
guix/scripts/import/composer.scm \
guix/scripts/import/crate.scm \
guix/scripts/import/cpan.scm \
guix/scripts/import/cran.scm \
@ -415,15 +422,12 @@ dist_noinst_DATA = \
AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/findclass.php \
gnu/packages/aux-files/guix.vim \
gnu/packages/aux-files/linux-libre/6.6-arm.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-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-arm64.conf \
gnu/packages/aux-files/linux-libre/6.1-i686.conf \
@ -510,6 +514,7 @@ SCM_TESTS = \
tests/challenge.scm \
tests/channels.scm \
tests/combinators.scm \
tests/composer.scm \
tests/containers.scm \
tests/cpan.scm \
tests/cpio.scm \

View File

@ -76,15 +76,17 @@ all the dependencies and appropriate environment variables are set up to
hack on Guix:
@example
guix shell -D guix --pure
guix shell -D guix -CPW
@end example
or even, from within a Git worktree for Guix:
@example
guix shell --pure
guix shell -CPW
@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.
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
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
@anchor{Multiple Patches}
@cindex cover letter

View File

@ -78,7 +78,7 @@ manual}).
* System Configuration:: Customizing the GNU System
* Containers:: Isolated environments and nested systems
* Advanced package management:: Power to the users!
* Software Development:: Environments, continuous integration, etc.
* Software Development:: Environments, continuous integration, etc.
* Environment management:: Control environment
* Installing Guix on a Cluster:: High-performance computing.
@ -167,6 +167,16 @@ Guix Profiles in Practice
* The benefits of manifests::
* Reproducible profiles::
Software Development
* Getting Started:: Step 0: using `guix shell'.
* Building with Guix:: Step 1: building your code.
* The Repository as a Channel:: Step 2: turning the repo in a channel.
* Package Variants:: Bonus: Defining variants.
* Setting Up Continuous Integration:: Step 3: continuous integration.
* Build Manifest:: Bonus: Manifest.
* Wrapping Up:: Recap.
Environment management
* Guix environment via direnv:: Setup Guix environment with direnv

View File

@ -119,6 +119,9 @@ Copyright @copyright{} 2023 Tanguy Le Carrour@*
Copyright @copyright{} 2023 Zheng Junjie@*
Copyright @copyright{} 2023 Brian Cully@*
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
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
@subsection Getting Substitutes from Other Servers
@c Note: This section name appears in a hint printed by 'guix weather'.
@cindex substitute servers, adding more
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
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
a substitute server @emph{without} authorizing its key.
@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
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
Until version 1.3.0, the @code{arguments} field would typically use
@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.
@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
@section Writing Manifests
@ -9558,6 +9598,20 @@ debugging information''), which roughly means that code is compiled with
@code{-O2 -g}, as is the case for Autoconf-based packages by default.
@end defvar
@defvar composer-build-system
This variable is exported by @code{(guix build-system composer)}. It
implements the build procedure for packages using
@url{https://getcomposer.org/, Composer}, the PHP package manager.
It automatically adds the @code{php} package to the set of inputs. Which
package is used can be specified with the @code{#:php} parameter.
The @code{#:test-target} parameter is used to control which script is run
for the tests. By default, the @code{test} script is run if it exists. If
the script does not exist, the build system will run @code{phpunit} from the
source directory, assuming there is a @file{phpunit.xml} file.
@end defvar
@defvar dune-build-system
This variable is exported by @code{(guix build-system dune)}. It
supports builds of packages using @uref{https://dune.build/, Dune}, a build
@ -10585,6 +10639,11 @@ we have seen before. @xref{Build Utilities}, for more about
the helpers used by this phase, and for more examples of
@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 staging, of code
Keep in mind that build phases are code evaluated at the time the
@ -12763,6 +12822,30 @@ scheme@@(guix-user)> (scandir (string-append $3 "/bin"))
$5 = ("." ".." "egrep" "fgrep" "grep")
@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
object and ``lowers'' it into a derivation (@pxref{Derivations}) or a
store file:
@ -12794,6 +12877,17 @@ This is similar to the @option{--verbosity} command-line option
shows build events only, and higher levels print build logs.
@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}
Run @var{exp}, a monadic expression, through the store monad.
@xref{The Store Monad}, for more information.
@ -14453,6 +14547,26 @@ repository used by the OCaml community.
Additional options include:
@table @code
@item --recursive
@itemx -r
Traverse the dependency graph of the given upstream package recursively
and generate package expressions for all those packages that are not yet
in Guix.
@end table
@item composer
@cindex Composer
@cindex PHP
Import metadata from the @uref{https://getcomposer.org/, Composer} package
archive used by the PHP community, as in this example:
@example
guix import composer phpunit/phpunit
@end example
Additional options include:
@table @code
@item --recursive
@itemx -r
@ -16437,7 +16551,10 @@ up building packages by yourself (@pxref{Substitutes}). The
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
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 availability of substitutes
@ -16504,8 +16621,9 @@ The available options are listed below.
@table @code
@item --substitute-urls=@var{urls}
@var{urls} is the space-separated list of substitute server URLs to
query. When this option is omitted, the default set of substitute
servers is queried.
query. When this option is omitted, the URLs specified with the
@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}
@itemx -s @var{system}
@ -16699,6 +16817,7 @@ The available targets are:
- aarch64-linux-gnu
- arm-linux-gnueabihf
- avr
- i586-pc-gnu
- i686-linux-gnu
- i686-w64-mingw32
@ -19316,7 +19435,8 @@ and DNS-SD.
@anchor{guix-configuration-build-machines}
@item @code{build-machines} (default: @code{#f})
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
untouched. Otherwise, the list of of gexps is written to
@ -19385,7 +19505,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.
@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}).
Using this field, a service may add new build machines to receive builds
@ -27589,6 +27710,66 @@ on TCP port 5232 of @code{localhost} and use the @code{htpasswd} file at
@end table
@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
@subsection Messaging Services
@ -45763,6 +45944,11 @@ This optional string field is only relevant if the kernel is Linux. In
that case, it corresponds to the ARCH variable used when building Linux,
@code{"mips"} for instance.
@item @code{rust-target} (default: @code{#false})
This optional string field is used to determine which rust target is best
supported by this platform. For example, the base level system targeted by
@code{armhf-linux} system is closest to @code{armv7-unknown-linux-gnueabihf}.
@item @code{glibc-dynamic-linker}
This field is the name of the GNU C Library dynamic linker for the
corresponding system, as a string. It can be
@ -45824,6 +46010,11 @@ Platform targeting x86 CPU running GNU/Hurd (also referred to as
``GNU'').
@end defvar
@defvar avr
Platform targeting AVR CPUs without an operating system, with run-time support
from AVR Libc.
@end defvar
@node System Images
@chapter Creating System Images

View File

@ -139,7 +139,8 @@ _guix_is_dash_f ()
{
_guix_is_short_option f ||
_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 ()
@ -333,6 +334,14 @@ _guix_complete ()
else
_guix_complete_available_package "$word_at_point"
fi
elif [[ "$command" = "style" ]]
then
if _guix_is_dash_f
then
_guix_complete_file
else
_guix_complete_available_package "$word_at_point"
fi
else
_guix_complete_available_package "$word_at_point"
fi

View File

@ -31,8 +31,9 @@
(srfi srfi-1))
(use-package-modules
base bootloaders commencement compression file gawk gdb gettext gtk guile
hurd less m4 package-management python ssh version-control)
autotools base bootloaders commencement compression file gawk gdb gettext gtk
guile guile-xyz hurd less m4 package-management python ssh
texinfo tls version-control)
(define (input->package input)
"Return the INPUT as package, or #f."
@ -63,8 +64,12 @@
diffutils file findutils gawk grep gzip less m4 openssh-sans-x tar xz
;; development packages
autoconf automake libtool texinfo
gcc-toolchain gdb-minimal git-minimal gnu-make
gettext-minimal python-minimal
guile-3.0 guile-2.2 guile-2.0
guile-readline guile-colorized
guile-gnutls guile-fibers guile-json-4
;; ourselves!
(package-without-tests guix)

View File

@ -48,6 +48,12 @@
;; Search path for target headers when cross-compiling.
(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
#:allow-other-keys)
"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))
#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 . _)
"Install a stripped GCC."
;; 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,
a target triplet."
(modify-phases phases
(add-after 'unpack 'patch-genmultilib-shebang
patch-genmultilib-shebang)
(add-before 'configure 'set-cross-path
;; 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
;; build side entirely and for now we have no way to select variables to
;; copy over. See (gnu packages cross-base) for more details.
(if (string-suffix? "-mingw32" target)
(cut set-cross-path/mingw #:target target <...>)
set-cross-path))
(cond
((string-suffix? "-mingw32" target)
(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
(cut make-cross-binutils-visible #:target target <...>))
(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."
(package
(inherit pkg)
(location (package-location pkg))
(name (string-append (package-name pkg) "-icecat"))
(native-inputs '())
(inputs '())

View File

@ -190,15 +190,16 @@ SYSTEM."
(define (pointless? target)
;; Return #t if it makes no sense to cross-build to TARGET from SYSTEM.
(match system
((or "x86_64-linux" "i686-linux")
(if (string-contains target "mingw")
(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.
#t)))
(or (string=? target "avr") ; Nothing for AVR at this time.
(match system
((or "x86_64-linux" "i686-linux")
(if (string-contains target "mingw")
(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.
#t))))
(define (either proc1 proc2 proc3)
(lambda (x)
@ -372,7 +373,7 @@ valid. Append SUFFIX to the job name."
(define %x86-64-micro-architectures
;; Micro-architectures for which we build tuned variants.
'("westmere" "ivybridge" "haswell" "skylake" "skylake-avx512"))
'("haswell" "skylake" "x86-64-v2" "x86-64-v3" "x86-64-v4"))
(define (tuned-package-jobs store package system)
"Return a list of jobs for PACKAGE tuned for SYSTEM's micro-architectures."

View File

@ -31,7 +31,7 @@
# Copyright © 2020 R Veera Kumar <vkor@vkten.in>
# Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
# 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 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
# Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
@ -202,6 +202,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/crates-graphics.scm \
%D%/packages/crates-gtk.scm \
%D%/packages/cross-base.scm \
%D%/packages/cross-toolchain.scm \
%D%/packages/crypto.scm \
%D%/packages/cryptsetup.scm \
%D%/packages/cups.scm \
@ -245,6 +246,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/electronics.scm \
%D%/packages/elf.scm \
%D%/packages/elixir.scm \
%D%/packages/elixir-xyz.scm \
%D%/packages/elm.scm \
%D%/packages/embedded.scm \
%D%/packages/emacs.scm \
@ -507,6 +509,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/photo.scm \
%D%/packages/phabricator.scm \
%D%/packages/php.scm \
%D%/packages/php-xyz.scm \
%D%/packages/piet.scm \
%D%/packages/pikchr.scm \
%D%/packages/pkg-config.scm \
@ -1188,10 +1191,13 @@ dist_patch_DATA = \
%D%/packages/patches/fp16-implicit-double.patch \
%D%/packages/patches/fp16-system-libraries.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/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freeimage-libtiff-compat.patch \
%D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/freeimage-CVE-2020-21428.patch \
%D%/packages/patches/freeimage-CVE-2020-22524.patch \
%D%/packages/patches/fulcrum-1.9.1-unbundled-libraries.patch \
%D%/packages/patches/fuse-glibc-2.34.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
@ -1444,7 +1450,6 @@ dist_patch_DATA = \
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
%D%/packages/patches/idris-test-ffi008.patch \
%D%/packages/patches/igraph-fix-varargs-integer-size.patch \
%D%/packages/patches/igt-gpu-tools-Use-libproc2.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/imagemagick-CVE-2020-27829.patch \
%D%/packages/patches/imagemagick-ReadDCMImage-fix.patch \
@ -1736,7 +1741,6 @@ dist_patch_DATA = \
%D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch \
%D%/packages/patches/openjdk-21-fix-rpath.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/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openrgb-unbundle-hueplusplus.patch \
@ -1769,6 +1773,8 @@ dist_patch_DATA = \
%D%/packages/patches/prusa-slicer-fix-tests.patch \
%D%/packages/patches/prusa-slicer-with-cereal-1.3.1.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-docrepr-fix-tests.patch \
%D%/packages/patches/python-feedparser-missing-import.patch \
@ -1948,7 +1954,7 @@ dist_patch_DATA = \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rtags-separate-rct.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-zuo-bin-sh.patch \
%D%/packages/patches/remake-impure-dirs.patch \
@ -2185,6 +2191,7 @@ dist_patch_DATA = \
%D%/packages/patches/yggdrasil-extra-config.patch \
%D%/packages/patches/zig-0.9-riscv-support.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/zsh-egrep-failing-test.patch

View File

@ -61,6 +61,7 @@
;;; Copyright © 2023 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; Copyright © 2023 Tobias Kortkamp <tobias.kortkamp@gmail.com>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -3942,7 +3943,7 @@ buffers.")
(define-public igt-gpu-tools
(package
(name "igt-gpu-tools")
(version "1.27.1")
(version "1.28")
(source
(origin
(method git-fetch)
@ -3951,9 +3952,7 @@ buffers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0d6jsj77qddccv0vfmqmbw3k2prvxzvmgc8zdi83gdi3wpp5i7zd"))
(patches
(search-patches "igt-gpu-tools-Use-libproc2.patch"))))
(base32 "15mnsgzlpd4jkr2zy3jzx0b021g89fa61b8sdm8rjp27gxqkl8mm"))))
(build-system meson-build-system)
(arguments
`(#:tests? #f ; many of the tests try to load kernel modules
@ -3971,7 +3970,8 @@ buffers.")
libdrm
libpciaccess
libunwind
procps))
procps
python))
(native-inputs
(list bison flex pkg-config python-docutils))
(home-page "https://gitlab.freedesktop.org/drm/igt-gpu-tools")
@ -4020,7 +4020,7 @@ you are running, what theme or icon set you are using, etc.")
(define-public hyfetch
(package
(name "hyfetch")
(version "1.4.10")
(version "1.4.11")
(source
(origin
(method git-fetch)
@ -4030,7 +4030,7 @@ you are running, what theme or icon set you are using, etc.")
(file-name (git-file-name name version))
(sha256
(base32
"1lf1vrasinda9j6yazznpx54gg5j24xvkjb68dxhby9dg8ql1h87"))))
"1ymj72virh8y8gwgg3j3skf6j0zn7p0plcza57lln1drnjspycy7"))))
(build-system python-build-system)
(arguments (list #:tests? #f)) ;no tests
(inputs (list python-typing-extensions))
@ -4487,7 +4487,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
(version "3.3.30-1")
(version "3.3.31-2")
(source
(origin
(method git-fetch)
@ -4496,7 +4496,7 @@ Python loading in HPC environments.")
(commit version)))
(file-name (git-file-name real-name version))
(sha256
(base32 "0k27m4a19p32c00w4jpmqy17v0ca4g5zixyw97yy12932c73d0dy"))))
(base32 "1fca5minalpmizbxh5kmjiv8xrl7k6g91zn8d84fxmbhsk8vn3kk"))))
(build-system trivial-build-system)
(inputs
(list bash-minimal

View File

@ -1807,7 +1807,10 @@ bad pixel tracking throughout the reduction process.")
(base32 "0vpgcbc9pmx0qqfia1frnwq3jkgfp8y3ikqdnzs5bs1sr13p9p3w"))))
(build-system pyproject-build-system)
(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
(add-before 'build 'set-env-version
(lambda _

View File

@ -0,0 +1,125 @@
<?php
/**
* The content of this file is copied from composer's src/Composer/Autoload/ClassMapGenerator.php
* the findClasses method was extracted, to prevent using any dependency.
*
* Composer (and thus this file) is distributed under the expat license, and
* ClassMapGenerator.php also contains this notice:
*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* This file is copied from the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* To the extent to wich it makes sense, as the author of the extract:
* Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
*/
/**
* Extract the classes in the given file
*
* @param string $path The file to check
* @throws \RuntimeException
* @return array The found classes
*/
function findClasses($path)
{
$extraTypes = PHP_VERSION_ID < 50400 ? '' : '|trait';
if (defined('HHVM_VERSION') && version_compare(HHVM_VERSION, '3.3', '>=')) {
$extraTypes .= '|enum';
}
// Use @ here instead of Silencer to actively suppress 'unhelpful' output
// @link https://github.com/composer/composer/pull/4886
$contents = @php_strip_whitespace($path);
if (!$contents) {
if (!file_exists($path)) {
$message = 'File at "%s" does not exist, check your classmap definitions';
} elseif (!is_readable($path)) {
$message = 'File at "%s" is not readable, check its permissions';
} elseif ('' === trim(file_get_contents($path))) {
// The input file was really empty and thus contains no classes
return array();
} else {
$message = 'File at "%s" could not be parsed as PHP, it may be binary or corrupted';
}
$error = error_get_last();
if (isset($error['message'])) {
$message .= PHP_EOL . 'The following message may be helpful:' . PHP_EOL . $error['message'];
}
throw new \RuntimeException(sprintf($message, $path));
}
// return early if there is no chance of matching anything in this file
if (!preg_match('{\b(?:class|interface'.$extraTypes.')\s}i', $contents)) {
return array();
}
// strip heredocs/nowdocs
$contents = preg_replace('{<<<[ \t]*([\'"]?)(\w+)\\1(?:\r\n|\n|\r)(?:.*?)(?:\r\n|\n|\r)(?:\s*)\\2(?=\s+|[;,.)])}s', 'null', $contents);
// strip strings
$contents = preg_replace('{"[^"\\\\]*+(\\\\.[^"\\\\]*+)*+"|\'[^\'\\\\]*+(\\\\.[^\'\\\\]*+)*+\'}s', 'null', $contents);
// strip leading non-php code if needed
if (substr($contents, 0, 2) !== '<?') {
$contents = preg_replace('{^.+?<\?}s', '<?', $contents, 1, $replacements);
if ($replacements === 0) {
return array();
}
}
// strip non-php blocks in the file
$contents = preg_replace('{\?>(?:[^<]++|<(?!\?))*+<\?}s', '?><?', $contents);
// strip trailing non-php code if needed
$pos = strrpos($contents, '?>');
if (false !== $pos && false === strpos(substr($contents, $pos), '<?')) {
$contents = substr($contents, 0, $pos);
}
// strip comments if short open tags are in the file
if (preg_match('{(<\?)(?!(php|hh))}i', $contents)) {
$contents = preg_replace('{//.* | /\*(?:[^*]++|\*(?!/))*\*/}x', '', $contents);
}
preg_match_all('{
(?:
\b(?<![\$:>])(?P<type>class|interface'.$extraTypes.') \s++ (?P<name>[a-zA-Z_\x7f-\xff:][a-zA-Z0-9_\x7f-\xff:\-]*+)
| \b(?<![\$:>])(?P<ns>namespace) (?P<nsname>\s++[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*+(?:\s*+\\\\\s*+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*+)*+)? \s*+ [\{;]
)
}ix', $contents, $matches);
$classes = array();
$namespace = '';
for ($i = 0, $len = count($matches['type']); $i < $len; $i++) {
if (!empty($matches['ns'][$i])) {
$namespace = str_replace(array(' ', "\t", "\r", "\n"), '', $matches['nsname'][$i]) . '\\';
} else {
$name = $matches['name'][$i];
// skip anon classes extending/implementing
if ($name === 'extends' || $name === 'implements') {
continue;
}
if ($name[0] === ':') {
// This is an XHP class, https://github.com/facebook/xhp
$name = 'xhp'.substr(str_replace(array('-', ':'), array('_', '__'), $name), 1);
} elseif ($matches['type'][$i] === 'enum') {
// In Hack, something like:
// enum Foo: int { HERP = '123'; }
// The regex above captures the colon, which isn't part of
// the class name.
$name = rtrim($name, ':');
}
$classes[] = ltrim($namespace . $name, '\\');
}
}
return $classes;
}
$options = getopt('i:f:', []);
$file = $options["f"];
$input = $options["i"];
$classes = findClasses($file);
foreach($classes as $class) {
echo '$classmap[\''.$class.'\'] = \''.$input.'/'.$file.'\';';
echo "\n";
}

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
;;; 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 © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
@ -29,13 +32,17 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages avr)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
#:use-module (gnu packages gl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages llvm)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages version-control)
#:use-module (gnu packages vim)
#:use-module (gnu packages ruby))
(define-public simavr
@ -118,6 +125,7 @@ multipart HEX files.")
;; only built).
(list
#:tests? #f
#:target "avr"
#:modules '((guix build gnu-build-system)
(guix build utils)
(ice-9 match)
@ -168,7 +176,7 @@ multipart HEX files.")
(mkdir-p dest)
(copy-recursively html dest)))
html-dirs)))))))
(native-inputs (list doxygen (make-avr-toolchain)))
(native-inputs (list doxygen))
(home-page "https://www.lufa-lib.org/")
(synopsis "Lightweight USB Framework for AVRs")
(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
documentation.")
(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
;;; 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 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@ -29,18 +27,14 @@
#:use-module (guix memoization)
#:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix build-system gnu)
#: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 flashing-tools)
#:use-module (gnu packages gcc)
#:use-module (gnu packages llvm)
#:use-module (gnu packages vim)
#:export (make-avr-toolchain))
#:export (make-avr-libc
make-avr-toolchain))
;;; Commentary:
;;;
@ -84,18 +78,7 @@
(format #t
"environment variable `CPLUS_INCLUDE_PATH' \
changed to ~a~%"
(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))))
(getenv "CPLUS_INCLUDE_PATH")))))))))
(native-search-paths
(list (search-path-specification
(variable "CROSS_C_INCLUDE_PATH")
@ -119,7 +102,10 @@ changed to ~a~%"
(define make-avr-gcc
(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
(name "avr-libc")
(version "2.0.0")
@ -132,12 +118,15 @@ changed to ~a~%"
"15svr2fx8j6prql2il2fc0ppwlv50rpmyckaxx38d3gxxv97zpdj"))))
(build-system gnu-build-system)
(arguments
'(#:out-of-source? #t
#:configure-flags '("--host=avr")))
(native-inputs `(("avr-binutils" ,(make-avr-binutils))
("avr-gcc" ,(make-avr-gcc #:xgcc xgcc))))
'(#:target "avr"
#:out-of-source? #t
;; Avoid including itself as this package is a target input and cannot
;; 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/")
(synopsis "The AVR C Library")
(synopsis "AVR C Library")
(description
"AVR Libc is a project whose goal is to provide a high quality C library
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))
(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-libc checks the compiler version and passes "--enable-device-lib"
;; for avr-gcc > 5.1.0. It wouldn't install the library for atmega32u4
@ -175,40 +164,3 @@ C++.")
(define make-avr-toolchain
(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
(package
(name "borg")
(version "1.2.6")
(version "1.2.7")
(source
(origin
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
(base32 "178klb3pglhhz553frf928v7zvaiqvri9fbhj33yx7h3hvqgi9mp"))
(base32 "06j1v4bw9jkjh6m29ns5sigmp0cslcf0cyy8rrqij11w72ijhgzn"))
(modules '((guix build utils)))
(snippet
#~(begin
@ -759,7 +759,7 @@ detection, and lossless compression.")
lz4
openssl
;; 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:
;; <https://issues.guix.gnu.org/53407>
python-llfuse

View File

@ -1529,7 +1529,10 @@ command.")
glibc)))
(define-public glibc-locales/hurd
(make-glibc-locales glibc/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)

View File

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

View File

@ -1070,11 +1070,11 @@ similar.")
(license license:gpl2+))))
(define-public r-stringendo
(let ((commit "83b8f2d82a09b33b9e895438bb523a021138be01")
(let ((commit "15594b1bba11048a812874bafec0eea1dcc8618a")
(revision "1"))
(package
(name "r-stringendo")
(version (git-version "0.3.4" revision commit))
(version (git-version "0.6.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@ -1083,10 +1083,10 @@ similar.")
(file-name (git-file-name name version))
(sha256
(base32
"1ap0nhbyd6xx0yl2vgmwk38p22yrkv4k9hw13r35z4wf343rry6v"))))
"15ij4zf2j9c8m9n4bqhmxkchjh2bhddwjfxngfpwv7c5wjqyi6ir"))))
(properties `((upstream-name . "Stringendo")))
(build-system r-build-system)
(propagated-inputs (list r-devtools r-usethis))
(propagated-inputs (list r-clipr))
(home-page "https://github.com/vertesy/Stringendo")
(synopsis "Stringendo is a string parsing library")
(description
@ -1095,11 +1095,11 @@ plotnames, filenames and paths.")
(license license:gpl3))))
(define-public r-readwriter
(let ((commit "12d32cb6533ef4b9eab4d707d1502525c2034aee")
(let ((commit "91373c44641014a1ce8e1c3e928747608aae8f54")
(revision "1"))
(package
(name "r-readwriter")
(version (git-version "0.3.2" revision commit))
(version (git-version "1.5.3" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@ -1108,11 +1108,11 @@ plotnames, filenames and paths.")
(file-name (git-file-name name version))
(sha256
(base32
"1hy47g8d7zppr2i9zlkwl2yb0ii8x710hqk07h089ldx9171qxab"))))
"156kvmplrip0w1zhs9yl5r0ayjipa0blhy614l65hbsjn1lwbskr"))))
(properties `((upstream-name . "ReadWriter")))
(build-system r-build-system)
(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")
(synopsis "Functions to read and write files conveniently")
(description
@ -10245,55 +10245,54 @@ auROC analysis.")
(license license:gpl3))))
(define-public r-sccustomize
(let ((commit "8414d1f5fb32277855b0619191a568932b7baeb0")
(let ((commit "397374590dae2ccc0c560897dcd1ce4382c18798")
(revision "1"))
(package
(name "r-sccustomize")
(version (git-version "0.7.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/samuel-marsh/scCustomize")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1wcgfq7lx83a2kf8pjbw524gdvxf351n08cwd5wzmmy57kf4knbj"))))
(version (git-version "2.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/samuel-marsh/scCustomize")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "11bafm0mlck27fqd8brz80pxb8dc5q0aqbp8zv0s9sx97njp7wsl"))))
(properties `((upstream-name . "scCustomize")))
(build-system r-build-system)
(propagated-inputs
(list r-circlize
r-colorway
r-cowplot
r-data-table
r-dittoseq
r-dplyr
r-forcats
r-ggbeeswarm
r-ggplot2
r-ggprism
r-ggpubr
r-ggrastr
r-ggrepel
r-glue
r-janitor
r-magrittr
r-matrix
r-paletteer
r-patchwork
r-pbapply
r-purrr
r-remotes
r-scales
r-scattermore
r-seurat
r-seuratobject
r-stringi
r-stringr
r-tibble
r-tidyr
r-tidyselect
r-viridis))
(propagated-inputs (list r-circlize
r-colorway
r-cowplot
r-data-table
r-dittoseq
r-dplyr
r-forcats
r-ggbeeswarm
r-ggplot2
r-ggprism
r-ggpubr
r-ggrastr
r-ggrepel
r-glue
r-janitor
r-magrittr
r-matrix
r-paletteer
r-patchwork
r-pbapply
r-purrr
r-remotes
r-scales
r-scattermore
r-seurat
r-seuratobject
r-stringi
r-stringr
r-tibble
r-tidyr
r-tidyselect
r-viridis))
(native-inputs (list r-knitr))
(home-page "https://github.com/samuel-marsh/scCustomize")
(synopsis "Custom visualization and analyses of single-cell sequencing")
@ -15349,7 +15348,9 @@ activity prediction from transcriptomics data, and its R implementation
(add-after 'unpack 'set-HOME
(lambda _ (setenv "HOME" "/tmp"))))))
(propagated-inputs
(list r-complexheatmap
(list r-basilisk
r-basilisk-utils
r-complexheatmap
r-dplyr
r-ggplot2
r-magrittr
@ -17988,7 +17989,7 @@ updated much more frequently.")
(define-public python-ctxcore
(package
(name "python-ctxcore")
(version "0.1.1")
(version "0.2.0")
(source
(origin
(method git-fetch)
@ -17998,8 +17999,8 @@ updated much more frequently.")
(file-name (git-file-name name version))
(sha256
(base32
"16nlj7z8pirgjad7vlgm7226b3hpw4a7n967vyfg26dsf5n8k70d"))))
(build-system python-build-system)
"0nv4lc46cnzpg5gcdxrsv7b4srmkq55zl3rcadw5pn3yyz5fzd2k"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
@ -18011,12 +18012,12 @@ updated much more frequently.")
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))))))
(propagated-inputs
(list python-cytoolz
python-numba
python-frozendict
python-numba
python-numpy
python-pandas
python-pyarrow
python-pyyaml
python-pyarrow-0.16
python-tqdm))
(native-inputs
(list python-pytest
@ -18064,67 +18065,77 @@ tree-based ensemble regressors.")
(license license:bsd-3)))
(define-public pyscenic
(package
(name "pyscenic")
(version "0.11.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aertslab/pySCENIC")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0pbmmr1zdb1vbbs6wx357s59d13pna6x03wq8blj6ckjws8bbq73"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
;; Numba needs a writable dir to cache functions.
(add-before 'check 'set-numba-cache-dir
(lambda _
(setenv "NUMBA_CACHE_DIR" "/tmp")))
(replace 'check
(lambda _
(invoke "pytest" "-v"))))))
(propagated-inputs
(list python-ctxcore
python-cytoolz
python-multiprocessing-on-dill
python-llvmlite
python-numba
python-attrs
python-frozendict
python-numpy
python-pandas
python-cloudpickle
python-dask
python-distributed
python-arboreto
python-boltons
python-setuptools
python-pyyaml
python-tqdm
python-interlap
python-umap-learn
python-loompy
python-networkx
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
;; Latest commit from the update-pyarrow branch
(let ((commit "5f170fdf474548c37ab381d1849c662820d658ee")
(revision "1"))
(package
(name "pyscenic")
(version (git-version "0.11.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aertslab/pySCENIC")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"03qkvy400rjndg2ds6bhcaprir71mqr2v3yv9vd77lcnzxgw3s0z"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
;; The cli modules referenced here have been removed, so this
;; breaks the sanity check.
(add-after 'unpack 'do-not-reference-deleted-modules
(lambda _
(substitute* "setup.py"
(("'db2feather = .*',") "")
(("'invertdb = .*',") "")
(("'gmt2regions = pyscenic.cli.gmt2regions:main'") ""))))
;; Numba needs a writable dir to cache functions.
(add-before 'check 'set-numba-cache-dir
(lambda _
(setenv "NUMBA_CACHE_DIR" "/tmp"))))))
(propagated-inputs
(list python-ctxcore
python-cytoolz
python-multiprocessing-on-dill
python-llvmlite
python-numba
python-attrs
python-frozendict
python-numpy
python-pandas
python-cloudpickle
python-dask
python-pyarrow ;XXX for dask
python-distributed
python-arboreto
python-boltons
python-setuptools
python-pyyaml
python-tqdm
python-interlap
python-umap-learn
python-loompy
python-networkx
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
transcription factors, gene regulatory networks and cell types from
single-cell RNA-seq data.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public python-ikarus
(package

View File

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

View File

@ -57,7 +57,7 @@ supported content to the Kodi media center.")
;; Arbitrary commit of branch master,
;; Update when updating uBlockOrigin.
(let* ((name "ublock-main-assets")
(commit "d93605b8584df8cd47bcc91b3d932feecd9e3a2a")
(commit "76bd7cb53036a36f7e7df5ee9173f588ba8aa966")
(revision "1")
(version (git-version "0" revision commit)))
(origin
@ -67,13 +67,13 @@ supported content to the Kodi media center.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1bbwxmb5rb1afh6i5a7m1ysaw0022wi5g091vpahi4h805p1s7a2")))))
(base32 "1kdzvflr1yxykyva5vsjqr0p2ik1200xbhxwpl3cx2jsiv8l95sk")))))
(define ublock-prod-assets
;; Arbitrary commit of branch gh-pages,
;; Update when updating uBlockOrigin.
(let* ((name "ublock-prod-assets")
(commit "1d3df32ef6672763f44b27a95fd5cb3b5770d5e2")
(commit "a379a168fc149ffbd6d10cd0700d4ab4801e57f2")
(revision "1")
(version (git-version "0" revision commit)))
(origin
@ -83,12 +83,12 @@ supported content to the Kodi media center.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1cbx7w1nzdcjq0z4z7j9nr8922i27nslprrw5dy03xcdqwc3x4l6")))))
(base32 "0syf3kbhvsbn5xka5knpclxby2kp92my1w7ixvf5fs9n08ylcip1")))))
(define ublock-origin
(package
(name "ublock-origin")
(version "1.53.2")
(version "1.54.0")
(home-page "https://github.com/gorhill/uBlock")
(source (origin
(method git-fetch)
@ -98,7 +98,7 @@ supported content to the Kodi media center.")
(file-name (git-file-name name version))
(sha256
(base32
"0mz1k5ghyc25v51md02qx7chrbg4cxagvqi18bcbs4agq8ix6sp7"))))
"1yacqpf9z8lprwsj194bhlp2ba9ywzbagd6lwxj3h6g405s7zp2k"))))
(build-system gnu-build-system)
(outputs '("xpi" "firefox" "chromium"))
(properties '((addon-id . "uBlock0@raymondhill.net")))
@ -221,3 +221,33 @@ fill and submit login forms if a matching password entry is found.")
(define-public passff/icecat
(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

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

View File

@ -2358,14 +2358,14 @@ programs, something like CSmith, a random generator of C programs.")
(define-public python-lit
(package
(name "python-lit")
(version "16.0.0")
(version "17.0.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "lit" version))
(sha256
(base32
"04dyv8b2nbdbn61zdgm042a21dwidyapn9zbinlf879a29rc6jiw"))))
"06z3p85gsy5hw3rbk0ym8aig9mvry1327gz7dfjhjigwandszafz"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -2374,8 +2374,8 @@ programs, something like CSmith, a random generator of C programs.")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "python" "lit.py" "tests")))))))
(native-inputs
(list llvm-14))
;; This can be built with any version of llvm.
(native-inputs (list llvm))
(home-page "https://llvm.org/")
(synopsis "LLVM Software Testing Tool")
(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
"16a1ac5n7k7sx15cnk03gw3fmslab3a7m74dc45rgpldgiff3577"))))
(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")
(synopsis "Run pylint with @command{python setup.py lint}")
(description "This package expose pylint as a lint command into

View File

@ -466,7 +466,7 @@ and 32-bit PowerPC architectures.")
(package
(inherit chez-scheme)
(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`.
;; See racket/src/ChezScheme/s/cmacros.ss c. line 360.
;; It will always be different than the upstream version!

View File

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

View File

@ -1263,7 +1263,7 @@ Google's C++ code base.")
((#:configure-flags flags)
#~(cons* "-DCMAKE_CXX_STANDARD=11" #$flags)))))))
(define-public abseil-cpp
(define-public abseil-cpp-20220623.1
(let ((base abseil-cpp-20200923.3))
(package
(inherit base)
@ -1284,16 +1284,40 @@ Google's C++ code base.")
`(cons* "-DABSL_BUILD_TESTING=ON"
(delete "-DABSL_RUN_TESTS=ON" ,flags))))))))
(define (abseil-cpp-for-c++-standard version)
(let ((base abseil-cpp))
(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-public abseil-cpp
(let ((base abseil-cpp-20220623.1))
(package
(inherit base)
(name "abseil-cpp")
(version "20230802.1")
(source (origin
(method git-fetch)
(uri (git-reference
(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)
(let ((base abseil-cpp))
@ -1306,10 +1330,10 @@ Google's C++ code base.")
(delete "-DBUILD_SHARED_LIBS=ON" #$flags)))))))))
(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
(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
(make-static-abseil-cpp abseil-cpp))

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 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -198,6 +199,32 @@ text or blue underlined text, on ANSI terminals.")
"1xif1bh938qpfc3d0f9xgidibpm65xix11w9gszwqnia00q7rb13"))))
(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
(package
(name "rust-aom-sys")
@ -1134,7 +1161,9 @@ EUI-64, also known as MAC-48 media access control addresses.")
(base32
"0lilr4f335m1fq1acmshd51zblfaglw1hha6lhalnc1fw3cg0aag"))))
(arguments
`(#:cargo-inputs
`(#:cargo-test-flags
'("--release" "--lib" "--bins" "--tests")
#:cargo-inputs
(("rust-android-glue" ,rust-android-glue-0.2)
("rust-cgl" ,rust-cgl-0.3)
("rust-cocoa" ,rust-cocoa-0.19)
@ -1170,7 +1199,9 @@ EUI-64, also known as MAC-48 media access control addresses.")
(base32
"1ggyyqn7dvz4yx5ygqfvnxwfb78wvdm5y6xqw5my1b4x61dv6wak"))))
(arguments
`(#:cargo-inputs
`(#:cargo-test-flags
'("--release" "--lib" "--bins" "--tests")
#:cargo-inputs
(("rust-android-glue" ,rust-android-glue-0.2)
("rust-cgl" ,rust-cgl-0.2)
("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))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1bhdgb7hgx7j92nm6ij5n8wisp50j8ff66ks14jzwdw2mwhrjam7"))))
(arguments `(#:skip-build? #t))))
(base32 "1bhdgb7hgx7j92nm6ij5n8wisp50j8ff66ks14jzwdw2mwhrjam7"))))))
;;;
;;; 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 © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -27,11 +28,13 @@
(define-module (gnu packages cross-base)
#:use-module (gnu packages)
#:use-module (gnu packages avr)
#:use-module (gnu packages gcc)
#:use-module (gnu packages base)
#:use-module (gnu packages linux)
#:use-module (gnu packages hurd)
#:use-module (gnu packages mingw)
#:use-module (guix memoization)
#:use-module (guix platform)
#:use-module (guix packages)
#:use-module (guix diagnostics)
@ -39,6 +42,7 @@
#:use-module (guix i18n)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (guix gexp)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
@ -48,7 +52,8 @@
cross-libc
cross-gcc
cross-mig
cross-kernel-headers))
cross-kernel-headers
cross-gcc-toolchain))
(define-syntax %xgcc
;; 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="
(assoc-ref %outputs "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
flags
#~(remove (cut string-match "--enable-languages.*" <>)
#$flags))))
(remove
(lambda (flag)
(or (and #$libc
(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)
(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
;; 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))
((#:phases phases)
@ -241,6 +272,31 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
"-DTOOLDIR_BASE_PREFIX=\\\"../../../../\\\""))
#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
#:key
(xgcc %xgcc)
@ -321,6 +377,9 @@ target that libc."
("libc" ,libc))
`(,@inputs
("mingw-source" ,(package-source mingw-w64)))))
((and libc (target-avr? target))
`(,@inputs
("libc" ,libc)))
(libc
`(,@inputs
("libc" ,libc)
@ -333,22 +392,7 @@ target that libc."
(inputs '())
;; Only search target inputs, not host inputs.
(search-paths (cons (search-path-specification
(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)))
(search-paths (cross-gcc-search-paths target))
(native-search-paths '())))
(define* (cross-kernel-headers . args)
@ -610,74 +654,127 @@ the base compiler. Use XBINUTILS as the associated cross-Binutils."
(xbinutils (cross-binutils target))
(xheaders (cross-kernel-headers target)))
"Return LIBC cross-built for TARGET, a GNU triplet. Use XGCC and XBINUTILS
and the cross tool chain."
(if (target-mingw? target)
(let ((machine (substring target 0 (string-index target #\-))))
(make-mingw-w64 machine
#:xgcc xgcc
#:xbinutils xbinutils))
(package
(inherit libc)
(name (string-append "glibc-cross-" target))
(arguments
(substitute-keyword-arguments
`( ;; Disable stripping (see above.)
#:strip-binaries? #f
and the cross tool chain. If TARGET doesn't have a standard C library #f is
returned."
(match target
((? target-mingw?)
(let ((machine (substring target 0 (string-index target #\-))))
(make-mingw-w64 machine
#:xgcc xgcc
#:xbinutils xbinutils)))
((or (? target-linux?) (? target-hurd?))
(package
(inherit libc)
(name (string-append "glibc-cross-" target))
(arguments
(substitute-keyword-arguments
`(;; Disable stripping (see above.)
#:strip-binaries? #f
;; This package is used as a target input, but it should not have
;; the usual cross-compilation inputs since that would include
;; itself.
#:implicit-cross-inputs? #f
;; This package is used as a target input, but it should not have
;; the usual cross-compilation inputs since that would include
;; itself.
#:implicit-cross-inputs? #f
;; We need SRFI 26.
#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
;; We need SRFI 26.
#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
,@(package-arguments libc))
((#:configure-flags flags)
`(cons ,(string-append "--host=" target)
,(if (target-hurd? target)
`(append (list "--disable-werror"
,@%glibc/hurd-configure-flags)
,flags)
flags)))
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'set-cross-kernel-headers-path
(lambda* (#:key inputs #:allow-other-keys)
(let* ((kernel (assoc-ref inputs "kernel-headers"))
(cpath (string-append kernel "/include")))
(for-each (cut setenv <> cpath)
',%gcc-cross-include-paths)
(setenv "CROSS_LIBRARY_PATH"
(string-append kernel "/lib")) ; for Hurd's libihash
#t)))
,@(if (target-hurd? target)
'((add-after 'install 'augment-libc.so
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(substitute* (string-append out "/lib/libc.so")
(("/[^ ]+/lib/libc.so.0.3")
(string-append out "/lib/libc.so.0.3"
" libmachuser.so libhurduser.so"))))
#t)))
'())))))
,@(package-arguments libc))
((#:configure-flags flags)
`(cons ,(string-append "--host=" target)
,(if (target-hurd? target)
`(append (list "--disable-werror"
,@%glibc/hurd-configure-flags)
,flags)
flags)))
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'set-cross-kernel-headers-path
(lambda* (#:key inputs #:allow-other-keys)
(let* ((kernel (assoc-ref inputs "kernel-headers"))
(cpath (string-append kernel "/include")))
(for-each (cut setenv <> cpath)
',%gcc-cross-include-paths)
(setenv "CROSS_LIBRARY_PATH"
(string-append kernel "/lib")) ; for Hurd's libihash
#t)))
,@(if (target-hurd? target)
'((add-after 'install 'augment-libc.so
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(substitute* (string-append out "/lib/libc.so")
(("/[^ ]+/lib/libc.so.0.3")
(string-append out "/lib/libc.so.0.3"
" libmachuser.so libhurduser.so"))))
#t)))
'())))))
;; Shadow the native "kernel-headers" because glibc's recipe expects the
;; "kernel-headers" input to point to the right thing.
(propagated-inputs `(("kernel-headers" ,xheaders)))
;; Shadow the native "kernel-headers" because glibc's recipe expects the
;; "kernel-headers" input to point to the right thing.
(propagated-inputs `(("kernel-headers" ,xheaders)))
(native-inputs `(("cross-gcc" ,xgcc)
("cross-binutils" ,xbinutils)
,@(if (target-hurd? target)
`(("cross-mig"
,(cross-mig target
#:xgcc xgcc
#:xbinutils xbinutils)))
'())
,@(package-inputs libc) ;FIXME: static-bash
,@(package-native-inputs libc))))))
(native-inputs `(("cross-gcc" ,xgcc)
("cross-binutils" ,xbinutils)
,@(if (target-hurd? target)
`(("cross-mig"
,(cross-mig target
#:xgcc xgcc
#:xbinutils xbinutils)))
'())
,@(package-inputs libc) ;FIXME: static-bash
,@(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:

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

View File

@ -3596,7 +3596,11 @@ You might also want to install the following optional dependencies:
(uri (pypi-uri "alchemy-mock" version))
(sha256
(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)
(arguments
'(#:phases (modify-phases %standard-phases
@ -4389,7 +4393,7 @@ the SQL language using a syntax that reflects the resulting query.")
(define-public apache-arrow
(package
(name "apache-arrow")
(version "13.0.0")
(version "14.0.0")
(source
(origin
(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))
(sha256
(base32
"03ykynzz01ar2y4blhcxjh6xsi0gqv380h5m669dddfz2isplsf8"))))
"08x01jcibmx03g9p0sjikp3dyynw6is6gyn0m3cy1gwkpkwk2ad2"))))
(build-system cmake-build-system)
(arguments
(list

View File

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

View File

@ -25,28 +25,33 @@
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages guile)
#: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
(package
(name "dezyne")
(version "2.17.8")
(version "2.18.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dezyne.org/download/dezyne/"
name "-" version ".tar.gz"))
(sha256
(base32 "0m5cnymcyg7k1jhp4xjpvpay7ia72xdzyjnjg0spsr4p7fy7yql4"))))
(base32 "1lbrxycpvwmvif3gpjnz8iskvlxp7f8bl71k44j7acwqrp8j2szi"))))
(propagated-inputs (list boost
guile-json-4
guile-readline
scmackerel))
(inputs (list bash-minimal
guile-3.0-latest
guile-json-4
guile-readline
guile-3.0
mcrl2-minimal
pth
sed))
(native-inputs (list guile-3.0-latest pkg-config))
(native-inputs (list guile-3.0 pkg-config))
(build-system gnu-build-system)
(arguments
(list
@ -58,21 +63,20 @@
(lambda _
(setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'install-readmes
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(base (string-append #$name "-" #$version))
(doc (string-append out "/share/doc/" base)))
(lambda _
(let* ((base (string-append #$name "-" #$version))
(doc (string-append #$output "/share/doc/" base)))
(mkdir-p doc)
(copy-file "NEWS" (string-append doc "/NEWS")))))
(add-after 'install 'wrap-binaries
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bash (assoc-ref %build-inputs "bash-minimal"))
(guile (assoc-ref %build-inputs "guile"))
(json (assoc-ref %build-inputs "guile-json"))
(mcrl2 (assoc-ref %build-inputs "mcrl2-minimal"))
(readline (assoc-ref %build-inputs "guile-readline"))
(sed (assoc-ref %build-inputs "sed"))
(lambda _
(let* ((bash #$(this-package-input "bash-minimal"))
(guile #$(this-package-input "guile"))
(json #$(this-package-input "guile-json"))
(mcrl2 #$(this-package-input "mcrl2-minimal"))
(readline #$(this-package-input "guile-readline"))
(scmackerel #$(this-package-input "scmackerel"))
(sed #$(this-package-input "sed"))
(effective (read
(open-pipe* OPEN_READ
"guile" "-c"
@ -83,15 +87,17 @@
(string-append sed "/bin")))
(scm-dir (string-append "/share/guile/site/" effective))
(scm-path
(list (string-append out scm-dir)
(list (string-append #$output 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
"/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 readline go-dir))))
(wrap-program (string-append out "/bin/dzn")
(string-append readline go-dir)
(string-append scmackerel go-dir))))
(wrap-program (string-append #$output "/bin/dzn")
`("PATH" ":" prefix ,path)
`("GUILE_AUTO_COMPILE" ":" = ("0"))
`("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:lgpl3+ ;Dezyne runtime library
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

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

View File

@ -0,0 +1,294 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Pierre-Henry Fröhring <phfrohring@deeplinks.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 elixir-xyz)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages elixir)
#:use-module (gnu packages linux)
#:use-module (gnu packages compression)
#:use-module (gnu packages base)
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
#:use-module (guix build-system mix)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
(define-public elixir-nimble-parsec
(package
(name "elixir-nimble-parsec")
(version "1.3.1")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "0rxiw6jzz77v0j460wmzcprhdgn71g1hrz3mcc6djn7bnb0f70i6"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(synopsis "Text-based parser combinators")
(description
"This library provides primitives for efficient parser combinators, allowing
for higher-level combinators through composition.")
(home-page "https://hexdocs.pm/nimble_parsec/")
(license license:asl2.0)))
(define-public elixir-makeup
(package
(name "elixir-makeup")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "19jpprryixi452jwhws3bbks6ki3wni9kgzah3srg22a3x8fsi8a"))))
(build-system mix-build-system)
(propagated-inputs (list elixir-nimble-parsec))
(arguments (list #:tests? #f)) ; no tests
(synopsis "Syntax highlighter for source code")
(description
"Makeup is a generic syntax highlighter in the style of Pygments suitable for use in code hosting,
forums, wikis or other applications that need to prettify source code.")
(home-page "https://hexdocs.pm/makeup/")
(license license:bsd-2)))
(define-public elixir-jason
(package
(name "elixir-jason")
(version "1.4.1")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "18d70i31bz11nr6vgsjn5prvhkvwqbyf3xq22ck5cnsnzp6ixc7v"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(synopsis "JSON parser and generator")
(description
"Parser and generator are written in pure Elixir and optimized for speed. They
are at least twice as fast as other Elixir/Erlang libraries (e.g.
Poison). The performance is comparable to jiffy, which is implemented in C as
a NIF.")
(home-page "https://hexdocs.pm/jason/")
(license license:asl2.0)))
(define-public elixir-file-system
(package
(name "elixir-file-system")
(version "0.2.10")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "1p0myxmnjjds8bbg69dd6fvhk8q3n7lb78zd4qvmjajnzgdmw6a1"))
(snippet #~(begin
(use-modules (guix build utils) (ice-9 ftw))
(mkdir "source")
(for-each (lambda (file)
(when (not (member file '("." ".." "source")))
(rename-file file (string-append "source/" file))))
(scandir "."))
(with-directory-excursion "source"
(invoke (string-append #+gzip "/bin/gunzip") "-v" "contents.tar.gz")
(invoke (string-append #+tar "/bin/tar") "-xvf" "contents.tar")
(delete-file "contents.tar")
(delete-file "priv/inotifywait.exe"))))))
(build-system mix-build-system)
(propagated-inputs (list inotify-tools))
(arguments (list #:tests? #f)) ; no tests
(synopsis "File system change watcher")
(description "Provides a file system change watcher wrapper based on
https://github.com/synrc/fs.")
(home-page "https://hexdocs.pm/file_system/")
(license license:wtfpl2)))
(define-public elixir-bunt
(package
(name "elixir-bunt")
(version "0.2.1")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "19bp6xh052ql3ha0v3r8999cvja5d2p6cph02mxphfaj4jsbyc53"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(synopsis "256 color ANSI coloring in the terminal")
(description "Bunt is an Elixir package that enables 256 color ANSI
coloring in the terminal and allows users to alias colors to more semantic and
application-specific names1.")
(home-page "https://hexdocs.pm/bunt/")
(license license:expat)))
(define-public elixir-inch-ex
(package
(name "elixir-inch-ex")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "1a4rjcy3hn5pc40si1d1y7qg0b0mnxx6pw825la67ky8r9gfrl4n"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list elixir-bunt elixir-jason))
(synopsis
"Suggest enhancements for inline documentation")
(description
"This package provides a Mix task that gives you hints where to improve your
inline docs.")
(home-page "https://hex.pm/packages/inch_ex")
(license license:expat)))
(define-public elixir-castore
(package
(name "elixir-castore")
(version "1.0.4")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "1y44amb8falsmrfzpkmf7qp6215g9kdl76g91dpna4af2jwc264l"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(synopsis "Up-to-date CA certificate store")
(description "The Elixir castore package is a micro-library that provides
an up-to-date CA certificate store file for Elixir applications.")
(home-page "https://hexdocs.pm/castore/")
(license license:asl2.0)))
(define-public elixir-excoveralls
(package
(name "elixir-excoveralls")
(version "0.18.0")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "02x69ll5scvraky0k5gacvnnmldv5k04kgk02x087d9w3y8vn28i"))))
(build-system mix-build-system)
(propagated-inputs (list elixir-castore elixir-jason))
(arguments (list #:tests? #f)) ; no tests
(synopsis "Coverage report tool with coveralls.io integration")
(description
"Library that reports test coverage statistics, with the option to
post to coveralls.io service. It uses Erlang's cover to generate coverage
information, and posts the test coverage results to coveralls.io through the
JSON API.")
(home-page "https://hexdocs.pm/excoveralls/")
(license license:expat)))
(define-public elixir-credo
(package
(name "elixir-credo")
(version "1.7.1")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "18jqi9s9r1587njzdxycvmmbma30cay9iamni4f3ih54jmh1r1z9"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list elixir-bunt elixir-file-system elixir-jason))
(native-inputs (list elixir-excoveralls elixir-inch-ex))
(synopsis "Static code analysis tool")
(description
"Credo is a static code analysis tool for the Elixir language with a focus on
teaching and code consistency. Credo can show you refactoring opportunities in
your code, complex code fragments, warn you about common mistakes, show
inconsistencies in your naming scheme and - if needed - help you enforce a
desired coding style.")
(home-page "https://hexdocs.pm/credo/")
(license license:expat)))
(define-public elixir-erlex
(package
(name "elixir-erlex")
(version "0.2.6")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "0x8c1j62y748ldvlh46sxzv5514rpzm809vxn594vd7y25by5lif"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(synopsis
"Convert Erlang style structs and error messages to equivalent Elixir")
(description
"Converted structs and error messages are useful for pretty printing
things like Dialyzer errors and Observer.")
(home-page "https://hexdocs.pm/erlex/")
(license license:asl2.0)))
(define-public elixir-dialyxir
(package
(name "elixir-dialyxir")
(version "1.4.1")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "00cqwhd1wabwds44jz94rvvr8z8cp12884d3lp69fqkrszb9bdw4"))))
(build-system mix-build-system)
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list elixir-erlex))
(synopsis "Mix tasks to simplify use of Dialyzer")
(description
"Mix Tasks are usable from the directory of the mix project you want to analyze.")
(home-page "https://hexdocs.pm/dialyxir/")
(license license:asl2.0)))
(define-public elixir-machete
(package
(name "elixir-machete")
(version "0.2.8")
(source
(origin
(method url-fetch)
(uri (hexpm-uri name version))
(sha256
(base32 "0952603bmqsf6v3ja99zpbnbx5d52i4xksjkfj3irl45ccq5pgq9"))))
(build-system mix-build-system)
(native-inputs (list elixir-credo elixir-dialyxir))
(synopsis "Literate test matchers for ExUnit")
(description
"Machete provides ergonomic match operators that act as building blocks to let
you define test expectations that can match data against any combination of
literals, variables, or parametrically defined matchers.")
(home-page "https://hexdocs.pm/machete/")
(license license:expat)))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar
;;; functionality or similar names.
;;;

View File

@ -27,6 +27,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (gnu packages)
@ -96,9 +97,20 @@
(lambda* (#:key inputs #:allow-other-keys)
;; Some tests require access to a home directory.
(setenv "HOME" "/tmp")))
(delete 'configure))))
(inputs
(list erlang git))
(delete 'configure)
(add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(programs '("elixir" "elixirc" "iex" "mix")))
(for-each (lambda (program)
(wrap-program (string-append out "/bin/" program)
'("ERL_LIBS" prefix ("${GUIX_ELIXIR_LIBS}"))))
programs)))))))
(inputs (list erlang git))
(native-search-paths
(list (search-path-specification
(variable "GUIX_ELIXIR_LIBS")
(files (list (string-append "lib/elixir/" (version-major+minor version)))))))
(home-page "https://elixir-lang.org/")
(synopsis "Elixir programming language")
(description "Elixir is a dynamic, functional language used to build
@ -106,3 +118,48 @@ scalable and maintainable applications. Elixir leverages the Erlang VM, known
for running low-latency, distributed and fault-tolerant systems, while also
being successfully used in web development and the embedded software domain.")
(license license:asl2.0)))
(define-public elixir-hex
(package
(name "elixir-hex")
(version "2.0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hexpm/hex.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1kvczwvij58kgkhak68004ap81pl26600bczg21mymy2sypkgxmj"))))
;; The mix-build-system assumes that Hex exists.
;; We build Hex using the gnu-build-system.
;; Other Elixir packages use the mix-build-system.
(build-system gnu-build-system)
(inputs (list elixir))
(arguments
(list
;; Hex is needed to build packages used to test Hex.
;; To avoid this circularity, we disable tests.
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(delete 'bootstrap)
(delete 'configure)
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(setenv "MIX_ENV" "prod")
(invoke "mix" "compile")))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(define X.Y #$(version-major+minor (package-version elixir)))
(define out (string-append (assoc-ref outputs "out") "/lib/elixir/" X.Y "/hex"))
(mkdir-p out)
(copy-recursively "_build/prod/lib/hex" out))))))
(synopsis "Package manager for the Erlang VM")
(description
"This project provides tasks that integrate with Mix, Elixir's build
tool.")
(home-page "https://hexdocs.pm/makeup_elixir/")
(license license:bsd-2)))

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.")
(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
(package
(name "emacs-geiser")
@ -5590,8 +5611,8 @@ type, for example: packages, buffers, files, etc.")
(license license:gpl3+)))
(define-public emacs-guix
(let ((commit "cf5b7a402ea503c3dcda85a86b9a6c6dd01896e0")
(revision "6"))
(let ((commit "455272c5cc72ed4ba5bad13c669f024f51479a58")
(revision "7"))
(package
(name "emacs-guix")
(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))
(sha256
(base32
"0wxiipgv91rlk9bhspx370rykywi52rxg5m1f7680vzs3ckc7nyd"))))
"1ihrd7f92p9xidh1mbjk1piykzg46xypnzf1rlxxsymmddlq4jpn"))))
(build-system gnu-build-system)
(arguments
(list
@ -11670,7 +11691,7 @@ them easier to distinguish from other, less important buffers.")
(define-public emacs-embark
(package
(name "emacs-embark")
(version "0.23")
(version "1.0")
(source
(origin
(method git-fetch)
@ -11678,7 +11699,7 @@ them easier to distinguish from other, less important buffers.")
(url "https://github.com/oantolin/embark")
(commit version)))
(sha256
(base32 "1dmsaw1m819kzmai45c4cqh5lyyha451f7dxzwwfz9crmzg2w5sf"))
(base32 "14alpanynww6z7yxxyiiy24c0p4pq1argsb0pmqavq25mdxgn4v2"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
@ -24412,8 +24433,8 @@ key again.")
(license license:gpl3+)))
(define-public emacs-mbsync
(let ((commit "b62491c0e0d89eb9c66261a16d7ac81231c9c453")
(revision "4"))
(let ((commit "d3c81da81ce5b154c0d048047a47277338721a70")
(revision "5"))
(package
(name "emacs-mbsync")
(version (git-version "0.1.2" revision commit))
@ -24426,7 +24447,7 @@ key again.")
(file-name (git-file-name name version))
(sha256
(base32
"1zlih37mkqjn2czl12zn7lgxxljvrwhqqpbksj9c91zn0f0rm3mz"))))
"10xxgvzjb7bl3lzgjkdsnnkd9wphkc2pm621agyjlayzcjnldz5p"))))
(build-system emacs-build-system)
(home-page "https://github.com/dimitri/mbsync-el")
(synopsis "Interface to mbsync for Emacs")

View File

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

View File

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

View File

@ -585,7 +585,7 @@ directories.
(native-inputs
(list intltool python-distutils-extra))
(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")
(synopsis "EFL Bittorrent client")
(description "Epour is a BitTorrent client based on the @dfn{Enlightenment

View File

@ -1365,7 +1365,7 @@ with the included @command{xfstests-check} helper.")
(define-public zfs
(package
(name "zfs")
(version "2.1.12")
(version "2.1.14")
(outputs '("out" "module" "src"))
(source
(origin
@ -1374,7 +1374,7 @@ with the included @command{xfstests-check} helper.")
"/download/zfs-" version
"/zfs-" version ".tar.gz"))
(sha256
(base32 "0vbf9kfryprb2mbb65jllf6xpsy44xskshglyqqwj4iyxmma5nk4"))))
(base32 "0gzansmin40llxxh2zkgpdyp41ikd8s5hv5mpwhpcivk1q8fv7sh"))))
(build-system linux-module-build-system)
(arguments
(list

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; 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, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
@ -952,7 +952,9 @@ Bech32 and segwit addresses.")
(when tests?
(invoke "pytest" "-v")))))))
(propagated-inputs
(list python-configargparse
(list python-bech32
python-configargparse
python-cryptography
python-daemon
python-docutils
python-ecdsa
@ -965,8 +967,6 @@ Bech32 and segwit addresses.")
python-wheel))
(native-inputs ; Only needed for running the tests
(list gnupg
python-bech32
python-cryptography
python-mock
python-pytest))
(home-page "https://github.com/romanz/trezor-agent")

View File

@ -872,38 +872,28 @@ Executables included are:
(license license:bsd-2)))
(define-public ovmf
(let ((commit "13a50a6fe1dcfa6600c38456ee24e0f9ecf51b5f")
(revision "1"))
(let ((toolchain-ver "GCC5"))
(package
(name "ovmf")
(version (git-version "20170116" revision commit))
(version "202308")
(source (origin
(method git-fetch)
(uri (git-reference
;; OVMF is part of the edk2 source tree.
(url "https://github.com/tianocore/edk2")
(commit commit)))
(recursive? #t) ;edk2 now uses a lot of submodules
(commit (string-append "edk2-stable" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1gy2332kdqk8bjzpcsripx10896rbvgl0ic7r344kmpiwdgm948b"))))
"04rnfnaqr2c7ayplj7ib730zp1snw157zx5rmykz5hz1zz2vb20j"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; No check target.
#:target #f ; Package produces firmware.
#:phases
#~(modify-phases %standard-phases
;; Hide the default GCC from CPLUS_INCLUDE_PATH to prevent it from
;; shadowing the version of GCC provided in native-inputs.
(add-after 'set-paths 'hide-implicit-gcc
(lambda* (#:key inputs #:allow-other-keys)
(let ((gcc (assoc-ref inputs "gcc")))
(setenv "CPLUS_INCLUDE_PATH"
(string-join
(delete (string-append gcc "/include/c++")
(string-split (getenv "CPLUS_INCLUDE_PATH")
#\:))
":")))))
(add-after 'unpack 'patch-source
(lambda _
(substitute* "edksetup.sh"
@ -916,41 +906,62 @@ Executables included are:
(bin (string-append tools "/BinWrappers/PosixLike")))
(setenv "WORKSPACE" cwd)
(setenv "EDK_TOOLS_PATH" tools)
(setenv "PYTHON3_ENABLE" "TRUE")
(setenv "PYTHON_COMMAND" "python3")
(setenv "PATH" (string-append (getenv "PATH") ":" bin))
(invoke "bash" "edksetup.sh")
(substitute* "Conf/tools_def.txt"
;; Guix gcc is compiled without pie
;; The -no-pie flag causes the Ia32 build to fail
(("-no-pie") ""))
(substitute* "Conf/target.txt"
(("^TARGET[ ]*=.*$") "TARGET = RELEASE\n")
(("^TOOL_CHAIN_TAG[ ]*=.*$")
(string-append "TOOL_CHAIN_TAG = " #$toolchain-ver "\n"))
(("^TARGET_ARCH[ ]*=.*$")
(string-append "TARGET_ARCH = IA32"
#$@(if (string=? "x86_64-linux" (%current-system))
'(", X64")
'())
"\n"))
(("^MAX_CONCURRENT_THREAD_NUMBER[ ]*=.*$")
(format #f "MAX_CONCURRENT_THREAD_NUMBER = ~a~%"
(number->string (parallel-job-count)))))
;; Build build support.
(setenv "BUILD_CC" "gcc")
(setenv "CC" "gcc")
(invoke "make" "-C" tools))))
(replace 'build
(lambda _
(invoke "build" "-a" "IA32" "-t" "GCC49"
(invoke "build" "-a" "IA32" "-t" #$toolchain-ver
"-p" "OvmfPkg/OvmfPkgIa32.dsc")))
#$@(if (string=? "x86_64-linux" (%current-system))
#~((add-after 'build 'build-x64
(lambda _
(invoke "build" "-a" "X64" "-t" "GCC49"
(invoke "build" "-a" "X64" "-t" #$toolchain-ver
"-p" "OvmfPkg/OvmfPkgX64.dsc"))))
#~())
(replace 'install
(lambda _
(let ((fmw (string-append #$output "/share/firmware")))
(mkdir-p fmw)
(copy-file "Build/OvmfIa32/RELEASE_GCC49/FV/OVMF.fd"
(string-append fmw "/ovmf_ia32.bin"))
#$@(if (string=? "x86_64-linux" (%current-system))
'((copy-file "Build/OvmfX64/RELEASE_GCC49/FV/OVMF.fd"
(string-append fmw "/ovmf_x64.bin")))
'())))))))
(for-each
(lambda (file)
(copy-file (string-append "Build/OvmfIa32/RELEASE_"
#$toolchain-ver "/FV/" file ".fd")
(string-append fmw "/" (string-downcase file) "_ia32.bin"))
#$@(if (string=? "x86_64-linux" (%current-system))
#~((copy-file (string-append "Build/OvmfX64/RELEASE_"
#$toolchain-ver "/FV/" file ".fd")
(string-append fmw "/" (string-downcase file) "_x64.bin")))
#~()))
(list "OVMF"
"OVMF_CODE"
"OVMF_VARS"))))))))
(native-inputs
`(("acpica" ,acpica)
("gcc@5" ,gcc-5)
("nasm" ,nasm)
("python-2" ,python-2)
("perl" ,perl)
("python-3" ,python-3)
("util-linux" ,util-linux "lib")))
(supported-systems '("x86_64-linux" "i686-linux"))
(home-page "https://www.tianocore.org")
@ -961,68 +972,112 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
license:bsd-2 license:bsd-3 license:bsd-4)))))
(define-public ovmf-aarch64
(package
(inherit ovmf)
(name "ovmf-aarch64")
(native-inputs
(append (package-native-inputs ovmf)
(if (not (string-prefix? "aarch64" (%current-system)))
`(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu"))
("cross-binutils" ,(cross-binutils "aarch64-linux-gnu")))
'())))
(arguments
(substitute-keyword-arguments (package-arguments ovmf)
((#:phases phases)
#~(modify-phases #$phases
#$@(if (string-prefix? "aarch64" (%current-system))
'()
'((add-before 'configure 'set-env
(lambda _
(setenv "GCC49_AARCH64_PREFIX" "aarch64-linux-gnu-")))))
(replace 'build
(lambda _
(invoke "build" "-a" "AARCH64" "-t" "GCC49"
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
(delete 'build-x64)
(replace 'install
(lambda _
(let ((fmw (string-append #$output "/share/firmware")))
(mkdir-p fmw)
(copy-file "Build/ArmVirtQemu-AARCH64/RELEASE_GCC49/FV/QEMU_EFI.fd"
(string-append fmw "/ovmf_aarch64.bin")))))))))
(supported-systems %supported-systems)))
(let ((toolchain-ver "GCC5"))
(package
(inherit ovmf)
(name "ovmf-aarch64")
(native-inputs
(append (package-native-inputs ovmf)
(if (not (string-prefix? "aarch64" (%current-system)))
`(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu"))
("cross-binutils" ,(cross-binutils "aarch64-linux-gnu")))
'())))
(arguments
(substitute-keyword-arguments (package-arguments ovmf)
((#:phases phases)
#~(modify-phases #$phases
#$@(if (string-prefix? "aarch64" (%current-system))
'()
#~((add-before 'configure 'set-env
(lambda _
(setenv (string-append #$toolchain-ver "_AARCH64_PREFIX")
"aarch64-linux-gnu-")))))
(replace 'build
(lambda _
(invoke "build" "-a" "AARCH64" "-t" #$toolchain-ver
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
(delete 'build-x64)
(replace 'install
(lambda _
(let ((fmw (string-append #$output "/share/firmware")))
(mkdir-p fmw)
(copy-file (string-append "Build/ArmVirtQemu-AARCH64/RELEASE_"
#$toolchain-ver "/FV/QEMU_EFI.fd")
(string-append fmw "/ovmf_aarch64.bin")))))))))
(supported-systems %supported-systems))))
(define-public ovmf-arm
(package
(inherit ovmf)
(name "ovmf-arm")
(native-inputs
(append (package-native-inputs ovmf)
(if (not (string-prefix? "armhf" (%current-system)))
`(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"))
("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf")))
'())))
(arguments
(substitute-keyword-arguments (package-arguments ovmf)
((#:phases phases)
#~(modify-phases #$phases
#$@(if (string-prefix? "armhf" (%current-system))
'()
'((add-before 'configure 'set-env
(lambda _
(setenv "GCC49_ARM_PREFIX" "arm-linux-gnueabihf-")))))
(replace 'build
(lambda _
(invoke "build" "-a" "ARM" "-t" "GCC49"
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
(delete 'build-x64)
(replace 'install
(lambda _
(let ((fmw (string-append #$output "/share/firmware")))
(mkdir-p fmw)
(copy-file "Build/ArmVirtQemu-ARM/RELEASE_GCC49/FV/QEMU_EFI.fd"
(string-append fmw "/ovmf_arm.bin")))))))))
(supported-systems %supported-systems)))
(let ((toolchain-ver "GCC5"))
(package
(inherit ovmf)
(name "ovmf-arm")
(native-inputs
(append (package-native-inputs ovmf)
(if (not (string-prefix? "armhf" (%current-system)))
`(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"))
("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf")))
'())))
(arguments
(substitute-keyword-arguments (package-arguments ovmf)
((#:phases phases)
#~(modify-phases #$phases
#$@(if (string-prefix? "armhf" (%current-system))
'()
#~((add-before 'configure 'set-env
(lambda _
(setenv (string-append #$toolchain-ver "_ARM_PREFIX")
"arm-linux-gnueabihf-")))))
(replace 'build
(lambda _
(invoke "build" "-a" "ARM" "-t" #$toolchain-ver
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
(delete 'build-x64)
(replace 'install
(lambda _
(let ((fmw (string-append #$output "/share/firmware")))
(mkdir-p fmw)
(copy-file (string-append "Build/ArmVirtQemu-ARM/RELEASE_"
#$toolchain-ver "/FV/QEMU_EFI.fd")
(string-append fmw "/ovmf_arm.bin")))))))))
(supported-systems %supported-systems))))
(define-public ovmf-riscv64
(let ((toolchain-ver "GCC5"))
(package
(inherit ovmf)
(name "ovmf-riscv64")
(native-inputs
(append (package-native-inputs ovmf)
(if (not (string-prefix? "riscv64" (%current-system)))
`(("cross-gcc" ,(cross-gcc "riscv64-linux-gnu"))
("cross-binutils" ,(cross-binutils "riscv64-linux-gnu")))
'())))
(arguments
(substitute-keyword-arguments (package-arguments ovmf)
((#:phases phases)
#~(modify-phases #$phases
#$@(if (string-prefix? "riscv64" (%current-system))
'()
#~((add-before 'configure 'set-env
(lambda _
(setenv (string-append #$toolchain-ver "_RISCV64_PREFIX")
"riscv64-linux-gnu-")))))
(replace 'build
(lambda _
(invoke "build" "-a" "RISCV64" "-t" #$toolchain-ver
"-p" "OvmfPkg/RiscVVirt/RiscVVirtQemu.dsc")))
(delete 'build-x64)
(replace 'install
(lambda _
(let ((fmw (string-append #$output "/share/firmware")))
(mkdir-p fmw)
(copy-file (string-append "Build/RiscVVirtQemu/RELEASE_"
#$toolchain-ver "/FV/RISCV_VIRT_CODE.fd")
(string-append fmw "/RISCV_VIRT_CODE.fd"))
(copy-file (string-append "Build/RiscVVirtQemu/RELEASE_"
#$toolchain-ver "/FV/RISCV_VIRT_VARS.fd")
(string-append fmw "/RISCV_VIRT_VARS.fd")))))))))
(supported-systems %supported-systems))))
(define* (make-arm-trusted-firmware platform
#:key (triplet "aarch64-linux-gnu"))
@ -1158,6 +1213,8 @@ such as:
#:make-flags
(let ((triplet-without-vendor
(and (%current-target-system)
;; TODO: Is there a use case for allowing this?
(not (target-avr?))
(match (string-split (nix-system->gnu-triplet
(%current-target-system)) #\-)
((arch vendor os ..1)
@ -1256,6 +1313,7 @@ OVERRIDE.H, to also override the corresponding layout include file."
(arguments
(list
#:tests? #f ;no test suite
#:target "avr"
#:make-flags
#~(list (string-append "LAYOUT=" #$layout)
;; Simplify the output directory name.
@ -1281,7 +1339,7 @@ OVERRIDE.H, to also override the corresponding layout include file."
(install-file "firmware.hex" #$output)
(install-file "firmware.eep" #$output)
(install-file "firmware--layout.html" #$output)))))))
(native-inputs (list (make-avr-toolchain) python))
(native-inputs (list python))
(home-page "https://www.ergodox.io")
(synopsis "Firmware for the ErgoDox keyboard")
(description (format #f "This package contains the original firmware for
@ -1343,9 +1401,7 @@ corresponding layout." layout))
`("PATH" prefix
,(map (compose dirname
(cut search-input-file inputs <>))
'("bin/avr-ar"
"bin/avr-gcc"
"bin/avrdude"
'("bin/avrdude"
"bin/awk"
"bin/cmp"
"bin/dfu-programmer"
@ -1358,16 +1414,13 @@ corresponding layout." layout))
;; TODO: Remove after git is wrapped with these.
"bin/basename"
"bin/sed"
"bin/uname")))
`("CROSS_C_INCLUDE_PATH" = (,(getenv "CROSS_C_INCLUDE_PATH")))
`("CROSS_LIBRARY_PATH" = (,(getenv "CROSS_LIBRARY_PATH")))))))))
"bin/uname")))))))))
;; The inputs are not propagated since qmk is to be used strictly as a
;; command.
(inputs
;; The 'qmk setup' command advises to use GCC at version 8, and there are
;; compilation errors in some firmware otherwise.
(list (make-avr-toolchain #:xgcc gcc-8)
avrdude
(list avrdude
bash-minimal
dfu-programmer
dfu-util
@ -1440,6 +1493,7 @@ provided."
(ice-9 ftw)
(ice-9 match)
(srfi srfi-26))
#:target "avr"
;; 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
;; out for now.

View File

@ -2494,7 +2494,7 @@ a different style of marking.")
(define-public font-jetbrains-mono
(package
(name "font-jetbrains-mono")
(version "2.242")
(version "2.304")
(source
(origin
(method url-fetch)
@ -2502,7 +2502,7 @@ a different style of marking.")
(string-append "https://github.com/JetBrains/JetBrainsMono/releases/"
"download/v" version "/JetBrainsMono-" version ".zip"))
(sha256
(base32 "17qs985v38x3rcg3v4av3qynwr4gvixrj50vjzy7zkkny575ncaf"))))
(base32 "1gvv5w0vfzndzp8k7g15j5i3yvnpr5z3imrwjs5flq19xp37cqvg"))))
(build-system font-build-system)
(arguments
`(#:phases
@ -2524,7 +2524,7 @@ a different style of marking.")
"JetBrains Mono is a font family dedicated to developers. JetBrains
Monos typeface forms are simple and free from unnecessary details. Rendered
in small sizes, the text looks crisper.")
(license license:asl2.0)))
(license license:silofl1.1)))
(define-public font-juliamono
(package

View File

@ -109,8 +109,10 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages qt)
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages speech)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages stb)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
@ -1339,17 +1341,17 @@ and multimedia programs in the Python language.")
(define-public python-pygame-sdl2
(let ((real-version "2.1.0")
(renpy-version "8.1.0"))
(renpy-version "8.1.3"))
(package
(inherit python-pygame)
(name "python-pygame-sdl2")
(version (string-append real-version "-for-renpy-" renpy-version))
(version (string-append real-version "+renpy" renpy-version))
(source
(origin
(method url-fetch)
(uri (string-append "https://www.renpy.org/dl/" renpy-version
"/pygame_sdl2-" version ".tar.gz"))
(sha256 (base32 "1qj39jqnv334p4wnxc2v5qxyahp7nkqf9hpdd2sgqcmgaqwnqqmj"))
(sha256 (base32 "0qlprs9n3w254ilizqzvr6s01zx72gh7an0bgwxsq4hm22qypdws"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1390,7 +1392,7 @@ developed mainly for Ren'py.")
(define-public python-renpy
(package
(name "python-renpy")
(version "8.1.0")
(version "8.1.3")
(source
(origin
(method url-fetch)
@ -1398,7 +1400,7 @@ developed mainly for Ren'py.")
"/renpy-" version "-source.tar.bz2"))
(sha256
(base32
"08l7z2vwqxkskj3rs2a0w9ahah28ixq8hy48h30k2dm9g19h450h"))
"1g6fz5dxp7yxhgv6q4brzf5hpfqq3l1g3dfv3fsiwwn6mj0b01z2"))
(modules '((guix build utils)))
(snippet
#~(begin
@ -1841,38 +1843,37 @@ of use.")
(define-public openmw
(package
(name "openmw")
(version "0.47.0")
(version "0.48.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/OpenMW/openmw")
(commit (string-append "openmw-" version))))
(url "https://github.com/OpenMW/openmw")
(commit (string-append "openmw-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"19mcbnjl4279qalb97msf965bjax48mx1r1qczyvwhn28h6n3bsy"))
(patches (search-patches "openmw-assume-nonconst-SIGSTKSZ.patch"))))
(base32 "0amkxfylk1l67d2igihnhhql62xr89wvg1sxbq2rnhczf6vxaj6f"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; No test target
#:configure-flags
(list "-DDESIRED_QT_VERSION=5"
"-DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON")))
(native-inputs
(list boost doxygen pkg-config))
(inputs
(list bullet
ffmpeg-4 ; https://gitlab.com/OpenMW/openmw/-/issues/6631
libxt
lz4
mygui-gl ; OpenMW does not need Ogre.
openal
openmw-openscenegraph
qtbase-5
recastnavigation
sdl2
unshield))
`(#:tests? #f ;No test target
#:configure-flags (list "-DDESIRED_QT_VERSION=5"
"-DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON")))
(native-inputs (list boost doxygen pkg-config))
(inputs (list bullet
ffmpeg
libxt
lz4
mygui-gl ;OpenMW does not need Ogre.
openal
openmw-openscenegraph
qtbase-5
recastnavigation
sdl2
unshield
icu4c
yaml-cpp
luajit
sqlite))
(synopsis "Re-implementation of the RPG Morrowind engine")
(description
"OpenMW is a game engine which reimplements and extends the one that runs

View File

@ -528,7 +528,7 @@ topology functions.")
libsoup
libxml2
rest-next
webkitgtk))
webkitgtk-for-gtk3))
(synopsis "Graphical map viewer and wayfinding program")
(description "GNOME Maps is a graphical map viewer. It uses map data from
the OpenStreetMap project. It can provide directions for walking, bicycling,

View File

@ -51,7 +51,7 @@
;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Naga Malleswari <nagamalli@riseup.net>
;;; 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 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
@ -1900,7 +1900,7 @@ either on a local, or remote machine via a number of methods.")
(define-public gnome-commander
(package
(name "gnome-commander")
(version "1.14.3")
(version "1.16.1")
(source
(origin
(method url-fetch)
@ -1908,8 +1908,10 @@ either on a local, or remote machine via a number of methods.")
(version-major+minor version) "/"
"gnome-commander-" version ".tar.xz"))
(sha256
(base32 "0yzx9slg632iflw9p96nlh9i50dhacq7hrzpkj8b48mr1zkxrn3q"))))
(build-system glib-or-gtk-build-system)
(base32 "1cyh20nz2f81rb6di99idvw4xjn969mjhj3n2q17kzjhlv20079z"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t))
(native-inputs
(list desktop-file-utils
flex
@ -1917,6 +1919,7 @@ either on a local, or remote machine via a number of methods.")
`(,glib "bin")
gobject-introspection
googletest
`(,gtk+-2 "bin")
intltool
itstool
libtool
@ -3576,11 +3579,19 @@ for dealing with different structured file formats.")
;; https://gitlab.gnome.org/GNOME/librsvg/-/issues/955).
(substitute* "gdk-pixbuf-loader/librsvg.thumbnailer.in"
(("@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
(lambda _
;; In lieu of #:make-flags
(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
;; successfully with the '--locked' flag.
(substitute* '("Makefile.am" "Makefile.in")
@ -3613,9 +3624,18 @@ for dealing with different structured file formats.")
(apply (assoc-ref gnu:%standard-phases 'configure)
#:configure-flags
(list "--disable-static"
"--enable-vala"
(string-append "--with-html-dir=" #$output
"/share/gtk-doc/html"))
#$@(if (%current-target-system)
#~(;; g-ir-scanner can't import its modules
;; 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)))
(add-after 'configure 'dont-vendor-self
(lambda* (#:key vendor-dir #:allow-other-keys)
@ -3625,13 +3645,14 @@ for dealing with different structured file formats.")
(replace 'build
(assoc-ref gnu:%standard-phases 'build))
(replace 'check
(lambda* args
((assoc-ref gnu:%standard-phases 'check)
#:test-target "check")))
(lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
((assoc-ref gnu:%standard-phases 'check)
#:test-target "check"))))
(replace 'install
(assoc-ref gnu:%standard-phases 'install)))))
(native-inputs (list `(,glib "bin") gobject-introspection pkg-config vala))
(inputs (list freetype harfbuzz libxml2 pango))
(native-inputs (list gdk-pixbuf `(,glib "bin") gobject-introspection pkg-config vala))
(inputs (list freetype gobject-introspection harfbuzz libxml2 pango))
(propagated-inputs (list cairo gdk-pixbuf glib))
(synopsis "SVG rendering library")
(description "Librsvg is a library to render SVG images to Cairo surfaces.
@ -8735,8 +8756,25 @@ the available networks and allows users to easily switch between them.")
library.")
(license license:lgpl2.1+)))
;; This is the last release providing the 2.6 API, hence the name.
;; This is needed by tascam-gtk
(define-public libxml++-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
(package
(inherit libxml++)

View File

@ -1,5 +1,5 @@
;;; 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 © 2014, 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016, 2020 Mark H Weaver <mhw@netris.org>
@ -130,11 +130,10 @@
(symlink (string-append "lock-obj-pub." triplet ".h")
(string-append "src/syscfg/lock-obj-pub."
source ".h")))
#$(let* ((target (%current-target-system))
(architecture
(string-take target (string-index target #\-))))
#$(let ((target (%current-target-system)))
(cond ((target-linux? target)
(match architecture
(match (string-take target
(string-index target #\-))
("armhf"
`(link "arm-unknown-linux-gnueabi" "linux-gnu"))
("mips64el"

View File

@ -472,7 +472,8 @@ in the style of communicating sequential processes (@dfn{CSP}).")
`(("gold" ,binutils-gold)))
(_ `()))
,@(package-native-inputs go-1.4)))
(supported-systems (delete "powerpc-linux" %supported-systems))))
(supported-systems (fold delete %supported-systems
(list "powerpc-linux" "i586-gnu")))))
(define-public go-1.16
(package

View File

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

View File

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

View File

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

View File

@ -16,7 +16,7 @@
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
@ -1103,6 +1103,35 @@ for calling methods on remote servers by exchanging JSON objects.")
(home-page "https://codeberg.org/rgherdt/scheme-json-rpc/")
(license license:expat)))
(define-public guile-ares-rs
(package
(name "guile-ares-rs")
(version "0.9.1")
(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
"173jg8z0cwq5r67lzxsmyir5f6cxd9i5gzb3qryq71cqq4h1c77n"))))
(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
(let ((commit "9f2609563fc53466e46d37c8d8d2fbcfce67b2ba")
(revision "5"))
@ -2249,6 +2278,18 @@ users and in some situations.")
(base32
"1q1snj8gz2bvqw2v2jvwlzn5xfh7f7wlp922isnzismrp4adc918"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-extension-path
(lambda _
;; Provide the absolute path of the guile-libudev extension to
;; ensure the dlopen call always succeeds.
(substitute* (find-files "." "\\.scm")
(("load-extension \"libguile-udev\"")
(format #f "load-extension \"~a/lib/libguile-udev.so\""
#$output))))))))
(native-inputs (list autoconf
automake
gettext-minimal
@ -5408,49 +5449,41 @@ high-level API for network management that uses rtnetlink.")
(commit (string-append "v" version))))
(file-name (string-append name "-" version))
(sha256
(base32
"0srkmchd4kmfa7q65r6fdzwklhgdlck1ll0s7smzs8ddjdgz2lwm"))))
(base32 "0srkmchd4kmfa7q65r6fdzwklhgdlck1ll0s7smzs8ddjdgz2lwm"))))
(build-system gnu-build-system)
(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)
#:select (target-guile-effective-version))
,@%gnu-build-system-modules)
#:imported-modules ((guix build guile-build-system)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile-lib (assoc-ref inputs "guile-lib"))
(json (assoc-ref inputs "guile-json"))
(tls (assoc-ref inputs "guile-gnutls"))
(version (target-guile-effective-version))
(scm (string-append "/share/guile/site/"
version))
(go (string-append "/lib/guile/"
version "/site-ccache")))
(wrap-program (string-append bin "/gitlab-cli")
`("GUILE_LOAD_PATH" prefix
(,(string-append out scm)
,(string-append guile-lib scm)
,(string-append json scm)
,(string-append tls scm)))
`("GUILE_LOAD_COMPILED_PATH" prefix
(,(string-append out go)
,(string-append guile-lib go)
,(string-append json go)
,(string-append tls go))))))))))
(native-inputs
(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)))
#:phases (modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile-lib (assoc-ref inputs "guile2.2-lib"))
(json (assoc-ref inputs "guile2.2-json"))
(tls (assoc-ref inputs "guile2.2-gnutls"))
(version (target-guile-effective-version))
(scm (string-append "/share/guile/site/" version))
(go (string-append "/lib/guile/" version
"/site-ccache")))
(wrap-program (string-append bin "/gitlab-cli")
`("GUILE_LOAD_PATH" prefix
(,(string-append out scm) ,(string-append
guile-lib scm)
,(string-append json scm)
,(string-append tls scm)))
`("GUILE_LOAD_COMPILED_PATH" prefix
(,(string-append out go) ,(string-append guile-lib
go)
,(string-append json go)
,(string-append tls go))))))))))
(native-inputs (list autoconf automake pkg-config texinfo))
(inputs (list bash-minimal guile-2.2 guile2.2-json guile2.2-lib
guile2.2-gnutls))
(home-page "https://github.com/artyom-poptsov/guile-gitlab")
(synopsis "Guile interface to GitLab")
(description
@ -5462,7 +5495,7 @@ GitLab instance.")
(define-public guile-smc
(package
(name "guile-smc")
(version "0.6.2")
(version "0.6.3")
(source
(origin
(method git-fetch)
@ -5472,7 +5505,7 @@ GitLab instance.")
(file-name (string-append name "-" version))
(sha256
(base32
"11083lj048ab5zsdgwpkshxi8v5nfdr7kvmmslszbi7lq2pwfqig"))))
"1gjwz1l2ls4xkkgg4d2vw3a1klc4var03ab4k6lq1jifdvc8n51f"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings

View File

@ -481,15 +481,23 @@ RGB animations.")
(define-public ddcutil
(package
(name "ddcutil")
(version "1.4.2")
(version "1.4.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.ddcutil.com/tarballs/"
"ddcutil-" version ".tar.gz"))
(sha256
(base32 "015l13j7fp9fmlc5d7m6nfjbzjbp8vc0g5py35ljw7li2xk16v60"))))
(base32 "17zrqdz5mzwyccvc5m166yjlbbg9k2m9cwyg0y30h3184p1b2wlq"))))
(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
(list pkg-config))
(inputs

View File

@ -1690,7 +1690,13 @@ purposes.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(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)
(arguments
`(#:phases

View File

@ -1253,7 +1253,9 @@ supplies a generic doubly-linked list and some string functions.")
(patches
(append
(search-patches "freeimage-unbundle.patch"
"freeimage-libtiff-compat.patch")
"freeimage-libtiff-compat.patch"
"freeimage-CVE-2020-21428.patch"
"freeimage-CVE-2020-22524.patch")
;; Take one patch from Arch Linux that adds LibRaw 0.20 compatibility.
(list (origin
(method url-fetch)

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; 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-2020, 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
@ -618,6 +618,21 @@ Javascript library, adding sorting, paging and filtering abilities to plain
HTML tables with minimal effort.")
(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
(package
(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}.")
(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
(package
(name "julia-astrotime")

View File

@ -2028,6 +2028,9 @@ covers feedback and persistent events.")
qtbase-5))
(arguments
(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
#~(modify-phases %standard-phases
(add-after 'unpack 'patch

View File

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

View File

@ -77,6 +77,7 @@
;;; Copyright © 2023 dan <i@dan.games>
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -493,7 +494,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
(define-public linux-libre-6.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 deblob-scripts-6.6
(linux-libre-deblob-scripts
@ -503,30 +504,15 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1hg3ck1j8288fhlhcvhgs1zzwh3i62nfvphw7x3vsaqr75kiwbjp")))
(define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version)
(hash (base32 "0zmpk5ls6282j88xpnymkr8z5hxpk2495hjjxm0jmb6ninnzdm3k")))
(hash (base32 "0hfqdyxl4nqmm4pspfm1ang8616dbsaj0d968c0186ch0738xrhc")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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.
;; Here are the support timelines:
;; <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 deblob-scripts-6.1
(linux-libre-deblob-scripts
@ -536,12 +522,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1hdibv43xbn1lv83i6qjgfmf1bvqxvq17fryfsq4r4sjgs9212js")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
(hash (base32 "13bmy22mi4ybl21kr3hdy6qiaawiqz2jgl2gl9hwqkyx04xh97f2")))
(hash (base32 "1qc4cwqlfni9i6mzh6arghdsd842hp9lb7s832dxw1p261mg4prn")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-5.15
(linux-libre-deblob-scripts
@ -551,12 +537,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1idjrn2w8jrixj8ifkk1awxyyq5042nc4p2mld4rda96azlnp948")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
(hash (base32 "0kh4v1224a7p7ib64pnmc1qid3d1lvg3c14l5s4rpr8qzq6w2s4w")))
(hash (base32 "00lyv7zsj97mkg9i7dkb1a6km22mnr0qr687d9zz4ckjq1pb2sq9")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-5.10
(linux-libre-deblob-scripts
@ -566,12 +552,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0xrrnmb5kcc5r21bdm24aq0fnkk1imn367c1cxlj78b6l6gigx4b")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "0642y6qj2d4aww6jcki81ba53pvjyfazjxgzgj8brqx8ixchdz3a")))
(hash (base32 "1vnamiyr378q52xgkg7kvpx80zck729dim77vp06a3q6n580g5gz")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-5.4
(linux-libre-deblob-scripts
@ -581,12 +567,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0sw67b2pk3lng4y67diqqnhxaggnp3nbkx8dxc5fs27rinfxr4m1")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "1hsgnv2vcziflhzrrxiny2yp88ybdqda48fm60xhpaphhs0cgfii")))
(hash (base32 "1c5n47dq9khb15hz24a000k3hj913vv1dda6famnm8wpjbfr176k")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-4.19
(linux-libre-deblob-scripts
@ -596,12 +582,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1425mhkfxn18vxn05bb4h3li7x1jl7l1hf1zi8xhnqv3wa31h9wl")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "12p431p2jqjfsf0all3fgn47z9fr2cdqyxipfrf4s4mlw4hpbyy6")))
(hash (base32 "1kkkpm34p5rq0iijzrzwaq0cb62w543argargw5p1wzg8803rlsk")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-4.14
(linux-libre-deblob-scripts
@ -611,7 +597,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1faagsj4i31z2bp83hflx3q9vrddjnn37a3ah2b47iaplva7z1nd")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "0rwgzyfmrns6zir0dpxkwz2hm3z8c0af3wy11lmxamaa5i2wq3k7")))
(hash (base32 "0j5nrankrhi56qzmyjg1pznqx1zgk5f7cfa154smjbn3zlm7lcv6")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
@ -649,11 +635,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(list %boot-logo-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
(source-with-patches linux-libre-6.1-pristine-source
(append
@ -773,11 +754,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
linux-libre-6.6-gnu-revision
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
(make-linux-libre-headers* linux-libre-6.1-version
linux-libre-6.1-gnu-revision
@ -1131,14 +1107,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-source linux-libre-6.6-source)
(define-public linux-libre linux-libre-6.6)
(define-public linux-libre-6.5
(make-linux-libre* linux-libre-6.5-version
linux-libre-6.5-gnu-revision
linux-libre-6.5-source
'("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-6.1
(make-linux-libre* linux-libre-6.1-version
linux-libre-6.1-gnu-revision
@ -3134,6 +3102,40 @@ Both commands are targeted at system administrators.")
'((release-monitoring-url . "https://www.netfilter.org/pub/iptables/")))
(license license:gpl2+)))
(define-public iptables-nft
(package
(inherit iptables)
(name "iptables-nft")
(source #f)
(build-system copy-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(delete 'unpack)
(replace 'install
(lambda* (#:key inputs #:allow-other-keys)
(for-each
(lambda (command-path)
(let ((link-path (string-append #$output command-path)))
(mkdir-p (dirname link-path))
(symlink (search-input-file inputs "sbin/xtables-nft-multi")
link-path)))
(apply append
'("/bin/iptables-xml")
(map (lambda (xtables)
(list (string-append "/sbin/" xtables)
(string-append "/sbin/" xtables "-restore")
(string-append "/sbin/" xtables "-save")))
'("arptables"
"ebtables"
"iptables"
"ip6tables")))))))))
(inputs (list iptables))
(native-inputs '())
(synopsis
"Programs to configure Linux IP packet filtering rules (nftables API)")))
(define-public bolt
(package
(name "bolt")
@ -6641,17 +6643,17 @@ by hand is no trivial task: @command{tmon} aims to make it understandable.")
(source (package-source linux-libre))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-subdirectory
(lambda _
(chdir "tools/power/x86/turbostat")
#t))
(delete 'configure)))) ; no configure script
(list
#:tests? #f ;no test suite
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'enter-subdirectory
(lambda _
(chdir "tools/power/x86/turbostat")))
(delete 'configure)))) ;no configure script
(inputs
(list libcap))
(supported-systems '("i686-linux" "x86_64-linux"))
@ -9380,7 +9382,7 @@ types and interfaces and translates so that the X server can use them.")
(define-public pipewire
(package
(name "pipewire")
(version "0.3.77")
(version "1.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -9389,7 +9391,7 @@ types and interfaces and translates so that the X server can use them.")
(file-name (git-file-name name version))
(sha256
(base32
"11jdd9ljm6967cdp97qqf5fa02ad69kdgk3212ap5gfndky2h43m"))))
"0a8wvsnbgqanp2vjdpkaxpny0k17hz720rd20zdi00s9xjbcrycr"))))
(build-system meson-build-system)
(arguments
(list
@ -9403,6 +9405,8 @@ types and interfaces and translates so that the X server can use them.")
(native-inputs
(list `(,glib "bin")
pkg-config
doxygen
python
python-docutils))
(inputs (list alsa-lib
avahi
@ -9443,7 +9447,7 @@ of Linux application development.")
(define-public wireplumber
(package
(name "wireplumber")
(version "0.4.14")
(version "0.4.17")
(source
(origin
(method git-fetch)
@ -9453,7 +9457,7 @@ of Linux application development.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0jmnd6000j4wx68lxgz5b4g4hxkf243ivi9swaaf8rnx99cbx91w"))))
(base32 "00jzn0pxy2ws819yg4p8xxhngqai3labd1alaxb8zwzymr7m06my"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Dsystemd=disabled"

View File

@ -2971,7 +2971,16 @@ pure Common Lisp.")
(license license:expat))))
(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
(sbcl-package->cl-source-package sbcl-cl-pcg))
@ -9986,8 +9995,8 @@ implementation specific equivalent.")
(sbcl-package->ecl-package sbcl-trivial-macroexpand-all))
(define-public sbcl-serapeum
(let ((commit "47217ab69f76673db7e1fa65665ab804fb46d974")
(revision "11"))
(let ((commit "c08442a9757b7fa30ac345cb040e1642f97f6b78")
(revision "12"))
(package
(name "sbcl-serapeum")
(version (git-version "0.0.0" revision commit))
@ -10000,7 +10009,7 @@ implementation specific equivalent.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1mr868z1za6vfhb7gq3j7c1rb606gqfzschxdy7wcqx5xv3ndgpa"))))
(base32 "1sabd048agvgv7bhbw126rci9hf45fk08zhghcv6an2h6xwmc3qv"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria
@ -18572,8 +18581,8 @@ building Jupyter kernels, based on Maxima-Jupyter which was based on
(sbcl-package->cl-source-package sbcl-common-lisp-jupyter))
(define-public sbcl-radiance
(let ((commit "a7237831970edfd330dddd5b347d3d1277853bf0")
(revision "2"))
(let ((commit "8d826c7fe1935338565580931db43f46181e0e85")
(revision "3"))
(package
(name "sbcl-radiance")
(version (git-version "2.1.2" revision commit))
@ -18585,7 +18594,7 @@ building Jupyter kernels, based on Maxima-Jupyter which was based on
(commit commit)))
(file-name (git-file-name "radiance" version))
(sha256
(base32 "1q4x9mswiizwgr7acl5zi6lkssfg2zajqbdq7xhw1kq6xfnq37j2"))))
(base32 "1j823dgp87www0sjbcbv9j025bfxlkwhjd7kz6635mrqwmmlki4l"))))
(build-system asdf-build-system/sbcl)
(arguments
`(#:tests? #f ; TODO: The tests require some configuration.
@ -19181,6 +19190,43 @@ Lisp.")
(define-public cl-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
(let ((commit "2024f5037a7f63db3e3587dc9972cd7b9318f06b")
(revision "1"))

View File

@ -1024,15 +1024,6 @@ the HTML documentation of TXR.")
(string-append "INSTALL" match #$output
"/share/doc/" #$name "-" #$version)))))
(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
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "stream.c"

View File

@ -78,7 +78,8 @@
#:use-module (srfi srfi-1)
#:use-module (ice-9 match)
#:export (make-lld-wrapper
system->llvm-target))
system->llvm-target
clang-properties))
(define* (system->llvm-target #:optional
(system (or (and=> (%current-target-system)
@ -114,7 +115,8 @@ as \"x86_64-linux\"."
("riscv64" => "RISCV64")
("x86_64" => "X86_64")
("i686" => "X86")
("i586" => "X86"))))
("i586" => "X86")
("avr" => "AVR"))))
(define (llvm-uri component version)
;; LLVM release candidate file names are formatted 'tool-A.B.C-rcN/tool-A.B.CrcN.src.tar.xz'
@ -602,13 +604,13 @@ output), and Binutils.")
'(("14.0.6" . "14f8nlvnmdkp9a9a79wv67jbmafvabczhah8rwnqrgd5g3hfxxxx")
("15.0.7" . "12sggw15sxq1krh1mfk3c1f07h895jlxbcifpwk3pznh4m1rjfy2")
("16.0.6" . "0jxmapg7shwkl88m4mqgfjv4ziqdmnppxhjz6vz51ycp2x4nmjky")
("17.0.5" . "149flpr96vcn7a1ckya6mm93m9yp85l47w156fjd0r99ydxrw5kv")))
("17.0.6" . "1a7rq3rgw5vxm8y39fyzr4kv7w97lli4a0c1qrkchwk8p0n07hgh")))
(define %llvm-patches
'(("14.0.6" . ("clang-14.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"))
("17.0.5" . ("clang-17.0-libc-search-path.patch"))))
("17.0.6" . ("clang-17.0-libc-search-path.patch"))))
(define (llvm-monorepo version)
(origin
@ -705,6 +707,10 @@ of programming tools as well as libraries with equivalent functionality.")
#$(string-append "-DLLVM_TARGETS_TO_BUILD="
(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_BUILD_WITH_INSTALL_RPATH=FALSE"
"-DBUILD_SHARED_LIBS:BOOL=TRUE"
@ -1501,7 +1507,7 @@ Library.")
(define-public llvm-17
(package
(inherit llvm-15)
(version "17.0.5")
(version "17.0.6")
(source (llvm-monorepo version))))
(define-public clang-runtime-17
@ -1517,7 +1523,7 @@ Library.")
(package-version llvm-17)))
(sha256
(base32
"12dbp10bhq25a44qnvz978mf9y6pdycwpp7sgq8a93by0fpgb72r")))))
"1f8szx762c325916gjxb5lw7zxyidynwnvx6fxxqscsx8514cxxa")))))
(define-public libomp-17
(package

View File

@ -1968,9 +1968,9 @@ Covariance Matrix Adaptation Evolution Strategy (CMA-ES) for Python.")
(license license:expat)))
(define-public python-autograd
(let* ((commit "442205dfefe407beffb33550846434baa90c4de7")
(let* ((commit "c6d81ce7eede6db801d4e9a92b27ec5d409d0eab")
(revision "0")
(version (git-version "0.0.0" revision commit)))
(version (git-version "1.5" revision commit)))
(package
(name "python-autograd")
(home-page "https://github.com/HIPS/autograd")
@ -1981,19 +1981,14 @@ Covariance Matrix Adaptation Evolution Strategy (CMA-ES) for Python.")
(commit commit)))
(sha256
(base32
"189sv2xb0mwnjawa9z7mrgdglc1miaq93pnck26r28fi1jdwg0z4"))
"04kljgydng42xlg044h6nbzxpban1ivd6jzb8ydkngfq88ppipfk"))
(file-name (git-file-name name version))))
(version version)
(build-system python-build-system)
(build-system pyproject-build-system)
(native-inputs
(list python-nose python-pytest))
(propagated-inputs
(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")
(description "Autograd can automatically differentiate native Python and
NumPy code. It can handle a large subset of Python's features, including loops,

View File

@ -138,6 +138,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages java)
#:use-module (gnu packages less)
#:use-module (gnu packages lisp)
@ -165,6 +166,8 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#: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-xyz)
#:use-module (gnu packages qt)
@ -174,6 +177,7 @@
#:use-module (gnu packages scheme)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
#:use-module (gnu packages simulation)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages swig)
@ -2918,7 +2922,7 @@ can solve two kinds of problems:
(define-public octave-cli
(package
(name "octave-cli")
(version "8.3.0")
(version "8.4.0")
(source
(origin
(method url-fetch)
@ -2926,7 +2930,7 @@ can solve two kinds of problems:
version ".tar.xz"))
(sha256
(base32
"1aav8i88y2yl11g5d44wpjngkpldvzk90ja7wghkb91cy2a9974i"))))
"1a58zyrl1lx6b6wr2jbf6w806vjxr3jzbh6n85iinag47qxdg6kg"))))
(build-system gnu-build-system)
(inputs
(list alsa-lib
@ -3651,6 +3655,146 @@ Cassowary solver with typical use cases gaining a 40x improvement. Memory
savings are consistently > 5x.")
(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
(package
(name "slepc")
@ -4747,7 +4891,7 @@ point numbers.")
(define-public wxmaxima
(package
(name "wxmaxima")
(version "22.12.0")
(version "23.11.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4756,7 +4900,7 @@ point numbers.")
(file-name (git-file-name name version))
(sha256
(base32
"12bjadmy2mf7d8v4iszmzckahfcwjzaba8wpbigksh4brvhb4gj5"))))
"0xj91wfkm19avwmpcfwgzdkcqjwfpkl3glhkpn4advsqc6sx3ra0"))))
(build-system cmake-build-system)
(native-inputs (list gettext-minimal))
(inputs (list bash-minimal

View File

@ -154,14 +154,14 @@ parsers to allow execution with Guile as extension languages.")))
(define-public mes
(package
(name "mes")
(version "0.25.1")
(version "0.26")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/mes/"
"mes-" version ".tar.gz"))
(sha256
(base32
"03np6h4qx94givjdvq2rmhvab38y5f91254n0avg4vq2j0cx78in"))))
"1m45wcrpp3syzdniqx12nyr6v8f9hsg516pwl1k9894nb2ni08hg"))))
(supported-systems '("armhf-linux" "i686-linux"
"x86_64-linux" "riscv64-linux"))
(propagated-inputs (list mescc-tools nyacc-1.00.2))

View File

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

View File

@ -204,6 +204,46 @@
#:use-module (gnu packages xorg)
#: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
(package
(name "audacious")
@ -1895,7 +1935,7 @@ complete studio.")
(define-public tascam-gtk
;; This commit represents the latest version at the time of this writing.
(let ((commit "17b8575ff88dfd2ede0f7ef9c5c5597ab8a00702")
(let ((commit "69fb86f31efcdb27c7854d2a190457aab42b337a")
(revision "0"))
(package
(name "tascam-gtk")
@ -1908,10 +1948,10 @@ complete studio.")
(file-name (git-file-name name version))
(sha256
(base32
"07k7rccqqg7lnygkh97a200l1i6s1rl92n01v0q6n4257sinir6f"))))
"05fbs5s24nwr6b10jgjhsfi7aj6y65kcickmygl7g84xvsnykdb0"))))
(build-system gnu-build-system)
(inputs
(list liblo gtkmm-3 alsa-lib libxml++-2))
(list liblo gtkmm-3 alsa-lib libxml++-3))
(native-inputs
(list `(,glib "bin") pkg-config))
(home-page "https://github.com/onkelDead/tascam-gtk")

View File

@ -21,14 +21,14 @@
(define-module (gnu packages ncdu)
#:use-module (gnu packages)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix gexp)
#:use-module (guix build-system gnu)
#:use-module (gnu packages perl)
#:use-module (gnu packages zig))
#:use-module (guix build-system zig))
(define-public ncdu-1
;; This old version is LTS. Version 2 works fine and has more features,
@ -73,29 +73,17 @@ ncurses installed.")
#~(begin
;; Delete a pregenerated man page. We'll build it ourselves.
(delete-file "ncdu.1")))))
(build-system zig-build-system)
(arguments
(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
#~(modify-phases %standard-phases
(delete 'configure) ; No configure script.
(add-before 'build 'pre-build
(lambda _
(setenv "ZIG_GLOBAL_CACHE_DIR"
(mkdtemp "/tmp/zig-cache-XXXXXX"))))
(delete 'validate-runpath)
(add-after 'build 'build-manpage
(lambda _
(invoke "make" "doc")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "zig" "test" "build.zig")))))))
(native-inputs
(list perl zig-0.10))))
(invoke "make" "doc"))))))
(native-inputs (list perl))
(properties `((tunable? . #t)))))
(define-public ncdu-2
(deprecated-package "ncdu2" ncdu))

View File

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

View File

@ -2677,7 +2677,7 @@ that block port 22.")
(define-public iperf
(package
(name "iperf")
(version "3.15")
(version "3.16")
(source
(origin
(method git-fetch)
@ -2686,7 +2686,7 @@ that block port 22.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "10fzz3j2kx36yhqd0mvwlawvhdbcm0qc41i3f6jf6a5whm70177q"))))
(base32 "0m8zhr050qgmkkaf0jgn2isrr7yyk8majx9c18pf1xsqpr00sxs6"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -4195,7 +4195,7 @@ network. This must be enabled on the target host, usually in the BIOS.")
(define-public traceroute
(package
(name "traceroute")
(version "2.1.2")
(version "2.1.5")
(source
(origin
(method url-fetch)
@ -4203,7 +4203,7 @@ network. This must be enabled on the target host, usually in the BIOS.")
"traceroute-" version "/traceroute-"
version ".tar.gz"))
(sha256
(base32 "07svkglyizxirgcmv6d4ih59f3ds8pnyprvkrqcf5d3p567jcz2h"))))
(base32 "17l5barragw0mfgsbjfndny3w4l7zs20l6s6rvim3azajq6jcv4w"))))
(build-system gnu-build-system)
(arguments
(list

View File

@ -131,7 +131,7 @@ and they are executed on lists of files, hosts, users or other items.")
(define-public xe
(package
(name "xe")
(version "0.11")
(version "1.0")
(source
(origin
(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))))
(file-name (git-file-name name version))
(sha256
(base32 "04jr8f6jcijr0bsmn8ajm0aj35qh9my3xjsaq64h8lwg5bpyn29x"))))
(base32 "1ijvf7q5pxk4rlj7p9q6fmpdqiwmc28gffkk6yg390k1a1z3msf9"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f

View File

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

View File

@ -168,6 +168,25 @@ human.")
#~(list "-DWITH_XC_DOCS=NO")))
#: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
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
@ -199,6 +218,8 @@ human.")
qtx11extras
quazip-0 ; XC_KEESHARE
readline
wl-clipboard ;for 'wl-copy'
xclip ;for 'xclip'
yubikey-personalization ; XC_YUBIKEY
zlib))
(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,17 @@
https://sources.debian.org/data/main/f/freeimage/3.18.0%2Bds2-10/debian/patches/r1877-improved-DDS-plugin-against-malicious-images.patch
Origin: upstream, r1877
Index: Source/FreeImage/PluginDDS.cpp
===================================================================
diff --git a/Source/FreeImage/PluginDDS.cpp b/Source/FreeImage/PluginDDS.cpp
--- a/Source/FreeImage/PluginDDS.cpp (revision 1876)
+++ b/Source/FreeImage/PluginDDS.cpp (revision 1877)
@@ -617,7 +617,7 @@
// read the file
// -------------------------------------------------------------------------
- const int line = CalculateLine(width, bpp);
+ const int line = CalculateLine(width, FreeImage_GetBPP(dib));
const int filePitch = ((desc->dwFlags & DDSD_PITCH) == DDSD_PITCH) ? (int)desc->dwPitchOrLinearSize : line;
const long delta = (long)filePitch - (long)line;

View File

@ -0,0 +1,229 @@
https://sources.debian.org/data/main/f/freeimage/3.18.0%2Bds2-10/debian/patches/r1848-improved-PFM-plugin-against-malicious-images.patch
Origin: upstream, r1848
Index: Source/FreeImage/PluginPFM.cpp
---
diff --git a/Source/FreeImage/PluginPFM.cpp b/Source/FreeImage/PluginPFM.cpp
--- a/Source/FreeImage/PluginPFM.cpp (revision 1847)
+++ b/Source/FreeImage/PluginPFM.cpp (revision 1848)
@@ -23,6 +23,12 @@
#include "Utilities.h"
// ==========================================================
+// Plugin Interface
+// ==========================================================
+
+static int s_format_id;
+
+// ==========================================================
// Internal functions
// ==========================================================
@@ -59,6 +65,9 @@
/**
Get an integer value from the actual position pointed by handle
+@param io
+@param handle
+@return Returns -1 in case of failure, returns the found number otherwise
*/
static int
pfm_get_int(FreeImageIO *io, fi_handle handle) {
@@ -65,70 +74,72 @@
char c = 0;
BOOL bFirstChar;
- // skip forward to start of next number
+ try {
- if(!io->read_proc(&c, 1, 1, handle)) {
- throw FI_MSG_ERROR_PARSING;
- }
+ // skip forward to start of next number
- while (1) {
- // eat comments
+ if (io->read_proc(&c, 1, 1, handle) != 1) {
+ throw FI_MSG_ERROR_PARSING;
+ }
- if (c == '#') {
- // if we're at a comment, read to end of line
+ while (1) {
+ // eat comments
- bFirstChar = TRUE;
+ if (c == '#') {
+ // if we're at a comment, read to end of line
- while (1) {
- if(!io->read_proc(&c, 1, 1, handle)) {
- throw FI_MSG_ERROR_PARSING;
- }
+ bFirstChar = TRUE;
- if (bFirstChar && c == ' ') {
- // loop off 1 sp after #
- bFirstChar = FALSE;
- } else if (c == '\n') {
- break;
+ while (1) {
+ if (io->read_proc(&c, 1, 1, handle) != 1) {
+ throw FI_MSG_ERROR_PARSING;
+ }
+
+ if (bFirstChar && c == ' ') {
+ // loop off 1 sp after #
+ bFirstChar = FALSE;
+ }
+ else if (c == '\n') {
+ break;
+ }
}
}
- }
- if (c >= '0' && c <='9') {
- // we've found what we were looking for
- break;
- }
+ if (c >= '0' && c <= '9') {
+ // we've found what we were looking for
+ break;
+ }
- if(!io->read_proc(&c, 1, 1, handle)) {
- throw FI_MSG_ERROR_PARSING;
+ if (io->read_proc(&c, 1, 1, handle) != 1) {
+ throw FI_MSG_ERROR_PARSING;
+ }
}
- }
- // we're at the start of a number, continue until we hit a non-number
+ // we're at the start of a number, continue until we hit a non-number
- int i = 0;
+ int i = 0;
- while (1) {
- i = (i * 10) + (c - '0');
+ while (1) {
+ i = (i * 10) + (c - '0');
- if(!io->read_proc(&c, 1, 1, handle)) {
- throw FI_MSG_ERROR_PARSING;
- }
+ if (io->read_proc(&c, 1, 1, handle) != 1) {
+ throw FI_MSG_ERROR_PARSING;
+ }
- if (c < '0' || c > '9') {
- break;
+ if (c < '0' || c > '9') {
+ break;
+ }
}
- }
- return i;
+ return i;
+ }
+ catch (const char *message) {
+ FreeImage_OutputMessageProc(s_format_id, message);
+ return -1;
+ }
}
// ==========================================================
-// Plugin Interface
-// ==========================================================
-
-static int s_format_id;
-
-// ==========================================================
// Plugin Implementation
// ==========================================================
@@ -230,8 +241,12 @@
}
// Read the header information: width, height and the scale value
- unsigned width = (unsigned) pfm_get_int(io, handle);
- unsigned height = (unsigned) pfm_get_int(io, handle);
+ int width = pfm_get_int(io, handle);
+ int height = pfm_get_int(io, handle);
+ if ((width <= 0) || (height <= 0)) {
+ throw FI_MSG_ERROR_PARSING;
+ }
+
float scalefactor = 1;
BOOL bResult = pfm_get_line(io, handle, line_buffer, PFM_MAXLINE);
@@ -262,7 +277,7 @@
throw FI_MSG_ERROR_MEMORY;
}
- for (unsigned y = 0; y < height; y++) {
+ for (int y = 0; y < height; y++) {
FIRGBF *bits = (FIRGBF*)FreeImage_GetScanLine(dib, height - 1 - y);
if(io->read_proc(lineBuffer, sizeof(float), lineWidth, handle) != lineWidth) {
@@ -271,7 +286,7 @@
float *channel = lineBuffer;
if(scalefactor > 0) {
// MSB
- for (unsigned x = 0; x < width; x++) {
+ for (int x = 0; x < width; x++) {
REVERSEBYTES(channel++, &bits[x].red);
REVERSEBYTES(channel++, &bits[x].green);
REVERSEBYTES(channel++, &bits[x].blue);
@@ -278,7 +293,7 @@
}
} else {
// LSB
- for (unsigned x = 0; x < width; x++) {
+ for (int x = 0; x < width; x++) {
bits[x].red = *channel++;
bits[x].green = *channel++;
bits[x].blue = *channel++;
@@ -296,7 +311,7 @@
throw FI_MSG_ERROR_MEMORY;
}
- for (unsigned y = 0; y < height; y++) {
+ for (int y = 0; y < height; y++) {
float *bits = (float*)FreeImage_GetScanLine(dib, height - 1 - y);
if(io->read_proc(lineBuffer, sizeof(float), lineWidth, handle) != lineWidth) {
@@ -305,12 +320,12 @@
float *channel = lineBuffer;
if(scalefactor > 0) {
// MSB - File is Big endian
- for (unsigned x = 0; x < width; x++) {
+ for (int x = 0; x < width; x++) {
REVERSEBYTES(channel++, &bits[x]);
}
} else {
// LSB - File is Little Endian
- for (unsigned x = 0; x < width; x++) {
+ for (int x = 0; x < width; x++) {
bits[x] = *channel++;
}
}
@@ -323,9 +338,12 @@
return dib;
} catch (const char *text) {
- if(lineBuffer) free(lineBuffer);
- if(dib) FreeImage_Unload(dib);
-
+ if (lineBuffer) {
+ free(lineBuffer);
+ }
+ if (dib) {
+ FreeImage_Unload(dib);
+ }
if(NULL != text) {
FreeImage_OutputMessageProc(s_format_id, text);
}

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,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

@ -1,130 +0,0 @@
From 5446e36e0685ec5c7b4f812dec5bf7959db4f906 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Thu, 20 Jul 2023 15:56:21 +0300
Subject: [PATCH 1/2] rktboot: Add support for riscv64.
(cherry picked from commit f80c5d001d5235556ae9cde617b1e3a1322d0505)
---
racket/src/rktboot/machine-def.rkt | 1 +
1 file changed, 1 insertion(+)
diff --git a/racket/src/rktboot/machine-def.rkt b/racket/src/rktboot/machine-def.rkt
index 8ff0688652..59ebfc88d8 100644
--- a/racket/src/rktboot/machine-def.rkt
+++ b/racket/src/rktboot/machine-def.rkt
@@ -25,6 +25,7 @@
[(regexp-match? #rx"^t?arm32" target-machine) "arm32"]
[(regexp-match? #rx"^t?arm64" target-machine) "arm64"]
[(regexp-match? #rx"^t?ppc32" target-machine) "ppc32"]
+ [(regexp-match? #rx"^t?rv64" target-machine) "rv64"]
[(regexp-match? #rx"^t?pb" target-machine) "pb"]
[else (error "machine.def: cannot infer architecture")]))]
[s (regexp-replace* #rx"[$][(]Mend[)]" s
base-commit: b10ecfb8311fca2d42636eea2ca12aff0b76b208
--
2.41.0
From 6261c3582c386e770d654ca6a36f112834f35aef Mon Sep 17 00:00:00 2001
From: Philip McGrath <philip@philipmcgrath.com>
Date: Sun, 16 Jul 2023 15:47:14 -0400
Subject: [PATCH 2/2] rktboot: improve machene type inference
Related to https://issues.guix.gnu.org/62231
Related to https://github.com/racket/racket/issues/3948
(cherry picked from commit 005488491cee89e7db38109de4c9dcf2d8d5aef0)
---
racket/src/rktboot/config.rkt | 73 +++++++++++++++++++++++++++++------
1 file changed, 61 insertions(+), 12 deletions(-)
diff --git a/racket/src/rktboot/config.rkt b/racket/src/rktboot/config.rkt
index 7a969017ed..2b411e002c 100644
--- a/racket/src/rktboot/config.rkt
+++ b/racket/src/rktboot/config.rkt
@@ -15,20 +15,69 @@
(path->complete-path scheme-dir))))))
(hash-set! ht 'make-boot-scheme-dir scheme-dir)
+(define (infer-target-machine)
+ ;; Compute a native or pbarch machine string for the current platform.
+ ;; Some caveats:
+ ;; 1. A pbarch Racket will always infer a pbarch machine,
+ ;; even if a native machine exists. Hopefully this is an
+ ;; unlikely scenario: if you're running Racket CS, you've
+ ;; bootstrapped Chez somehow, so you could use `re.boot`.
+ ;; 2. A `tpb` or `pb` Racket on a 32-bit platform would still return
+ ;; 64 from `(system-type 'word)`, but, in addition to the above,
+ ;; it is not currently possible or desired to build Racket as
+ ;; `tpb` or `pb` (as opposed to pbarch variants):
+ ;; see <https://github.com/racket/racket/issues/4692>.
+ ;; 3. On a hypothetical platform where Chez supported both the
+ ;; architecture and the OS, but not the combination of the two,
+ ;; (e.g. riscv64 Windows) this code would currently return a
+ ;; non-existent native machine (e.g. trv64nt) instead of a
+ ;; working pbarch machine. Presumably this could be fixed if
+ ;; such a platform came into existence.
+ (define s (path->string (system-library-subpath #f)))
+ (define arch+os
+ (cond
+ [(regexp-match #rx"^([^\\]+)\\\\([^\\]+)$" s)
+ => (λ (m)
+ (reverse (cdr m)))]
+ [(regexp-match #rx"^([^-]+)-(.+)$" s)
+ => cdr]
+ [else
+ (error 'infer-target-machine "unknown format for system library subpath"
+ "produced" (system-library-subpath #f))]))
+ (define arch
+ (case (car arch+os)
+ [("x86_64" "amd64") "a6"] ; https://github.com/racket/racket/issues/4691
+ [("i386") "i3"]
+ [("aarch64") "arm64"]
+ [("arm") "arm32"]
+ [("ppc") "ppc32"]
+ [("riscv64") "rv64"]
+ [("unknown") #f] ; pb machine types
+ [else #f]))
+ (define os
+ (case (cadr arch+os)
+ [("macosx" "darwin" "ios") "osx"]
+ [("win32" "cygwin") "nt"]
+ [("linux" "android") "le"]
+ [("gnu-hurd") "gnu"]
+ [("freebsd") "fb"]
+ [("openbsd") "ob"]
+ [("netbsd") "nb"]
+ [("solaris") "s2"] ; NOT "sunos4" (I think)
+ [("qnx") "qnx"]
+ [("unknown") #f] ; pb machine types
+ [else #f]))
+ (if (and arch os)
+ (string-append "t" arch os)
+ (format "tpb~a~a"
+ (system-type 'word)
+ (if (system-big-endian?)
+ "b"
+ "l"))))
+
(define target-machine (or (hash-ref ht 'make-boot-targate-machine #f)
(getenv "MACH")
- (case (system-type)
- [(macosx) (if (eqv? 64 (system-type 'word))
- "ta6osx"
- "ti3osx")]
- [(windows) (if (eqv? 64 (system-type 'word))
- "ta6nt"
- "ti3nt")]
- [else
- (case (path->string (system-library-subpath #f))
- [("x86_64-linux") "ta6le"]
- [("i386-linux") "ti3le"]
- [else #f])])))
+ (infer-target-machine)))
(hash-set! ht 'make-boot-targate-machine target-machine)
(define optimize-level-init 3)
--
2.41.0

View File

@ -0,0 +1,36 @@
From 1d8dbdf408db9e99f1382323477561d5148cd451 Mon Sep 17 00:00:00 2001
From: Philip McGrath <philip@philipmcgrath.com>
Date: Fri, 20 Oct 2023 17:19:50 -0400
Subject: [PATCH] racket-index: fix release.scrbl for layered installations
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Configure the release notes page to be rendered separately at every
installation layer. Otherwise, rendering documentation for packages
installed in a new layer might try to write to `release/in.sxref`
in the parent layers docs directory.
Related to https://github.com/videolang/video/issues/67
Related to https://issues.guix.gnu.org/56534
(cherry picked from commit 85f21854c0a41564b755fbe180fe6b85de6c4730)
---
pkgs/racket-index/scribblings/main/info.rkt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pkgs/racket-index/scribblings/main/info.rkt b/pkgs/racket-index/scribblings/main/info.rkt
index 75c507848a..a6a3798f7c 100644
--- a/pkgs/racket-index/scribblings/main/info.rkt
+++ b/pkgs/racket-index/scribblings/main/info.rkt
@@ -6,4 +6,4 @@
("local-redirect.scrbl" (depends-all-main no-depend-on every-main-layer) (omit) "local-redirect" 1 10)
("license.scrbl" () (omit))
("acks.scrbl" () (omit))
- ("release.scrbl" (depends-all-main no-depend-on) (omit))))
+ ("release.scrbl" (depends-all-main no-depend-on every-main-layer) (omit))))
base-commit: c3a502c0ae9f4d615bfd85fc7d88b781826bbb09
--
2.41.0

View File

@ -0,0 +1,36 @@
From 1dc188129950031243c5a0c80ec2562fab8ec549 Mon Sep 17 00:00:00 2001
From: Ekaitz Zarraga <ekaitz@elenq.tech>
Date: Sat, 18 Nov 2023 15:04:16 +0100
Subject: [PATCH] Use `baseline` cpu by default.
This helps Guix tune the package later. Tunning will only add
`-Dcpu=whatever` which should override the standard behaviour.
Zig by default uses `native`, which interferes with our build process.
In our previous zig-build-system we chose to add `-Dcpu=baseline` flag
in each `zig build` execution, but that doesn't allow us to tune the
package later. Tunning is only designed to add extra flags in the
command line call, and we already had one set for the baseline case.
With this patch we set the standard behavior to `baseline` so we don't
need to add the `-Dcpu=baseline` flag in the zig-build-system and we can
tune with no issues.
---
lib/std/zig/CrossTarget.zig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/std/zig/CrossTarget.zig b/lib/std/zig/CrossTarget.zig
index 6c59a4a3a..f5ec065fe 100644
--- a/lib/std/zig/CrossTarget.zig
+++ b/lib/std/zig/CrossTarget.zig
@@ -12,7 +12,7 @@ const mem = std.mem;
/// `null` means native.
cpu_arch: ?Target.Cpu.Arch = null,
-cpu_model: CpuModel = CpuModel.determined_by_cpu_arch,
+cpu_model: CpuModel = CpuModel.baseline,
/// Sparse set of CPU features to add to the set from `cpu_model`.
cpu_features_add: Target.Cpu.Feature.Set = Target.Cpu.Feature.Set.empty,
--
2.41.0

View File

@ -824,14 +824,14 @@ and based on PDF specification 1.7.")
(define-public mupdf
(package
(name "mupdf")
(version "1.23.4")
(version "1.23.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://mupdf.com/downloads/archive/"
"mupdf-" version "-source.tar.lz"))
(sha256
(base32 "0068swdrlq9q7pkg3dxn4rschxm5j37pd4vz0cb2pcry75rdmxpc"))
(base32 "0d0ig1amxyy50jvfbn6rz49zd0980p6syqzcx5v7wg0c3pl2iwwm"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-1)))
@ -1388,7 +1388,7 @@ manage or manipulate PDFs.")
(define-public pdfarranger
(package
(name "pdfarranger")
(version "1.9.2")
(version "1.10.1")
(source
(origin
(method git-fetch)
@ -1397,7 +1397,7 @@ manage or manipulate PDFs.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1zj1fdaqih9d878yxy96ivgqyg4j31slvh2gqsyz2l2vj3s8z54x"))))
(base32 "0bi3yyns05yamml5jcnqvdaf7i19jg636wb1fj2mwlial9ww7zwp"))))
(build-system python-build-system)
(arguments
(list
@ -1409,7 +1409,10 @@ manage or manipulate PDFs.")
(let ((program (string-append #$output "/bin/pdfarranger")))
(wrap-program program
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH"))))))))))
(,(getenv "GI_TYPELIB_PATH")))))))
(add-before 'sanity-check 'set-home
(lambda _
(setenv "HOME" "/tmp"))))))
(native-inputs
(list intltool python-distutils-extra))
(inputs

View File

@ -0,0 +1,50 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
;;;
;;; 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 php-xyz)
#:use-module (gnu packages)
#:use-module (gnu packages php)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system copy)
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:))
(define-public composer-classloader
(package
(name "composer-classloader")
(version "1.9.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/composer/composer")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0127zmmg3yx84ljngfs86q7kjhyypybkf4d1ihfrfnzgynzxfxdf"))))
(build-system copy-build-system)
(arguments
`(#:install-plan
'(("src/Composer/Autoload/ClassLoader.php" "/share/web/composer/"))))
(home-page "https://getcomposer.org")
(synopsis "PHP class loader extracted from the composer package")
(description "This package contains the class loader class used by Composer to
build its autoloading feature. This package is used by the composer-build-system
to build its own store-aware autoloading feature.")
(license license:expat)))

View File

@ -42,18 +42,23 @@
(define-public pypy
(package
(name "pypy")
(version "7.3.5")
(version "7.3.13")
(source (origin
(method url-fetch)
(uri (string-append "https://downloads.python.org/pypy/"
"pypy3.7-v" version "-src.tar.bz2"))
"pypy3.10-v" version "-src.tar.bz2"))
(sha256
(base32
"18lrdmpcczlbk3cfarkgwqdmilrybz56i1dafk8dkjlyk90gw86r"))))
"0v9s6pwrnaxqi5h1pvmaphj6kgyczx07ykl07hcx656h34y77haa"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;FIXME: 43 out of 364 tests are failing
;; XXX: ELF file 'pypy.debug' makes 'validate-needed-in-runpath' throw:
;; <https://issues.guix.gnu.org/57653>.
#:validate-runpath? #f
#:modules '((ice-9 ftw) (ice-9 match)
(guix build utils) (guix build gnu-build-system))
#:disallowed-references (list nss-certs)
@ -151,7 +156,7 @@
(for-each
(lambda (x)
(delete-file-recursively (string-append
"lib-python/3/" x)))
"lib/pypy3.10/" x)))
'("tkinter/test"
"test"
"sqlite3/test"
@ -161,12 +166,12 @@
"ctypes/test"
"unittest/test"))
;; Patch shebang referencing python.
(substitute* '("lib-python/3/cgi.py"
"lib-python/3/encodings/rot_13.py")
(substitute* '("lib/pypy3.10/cgi.py"
"lib/pypy3.10/encodings/rot_13.py")
((shebang-match-python) shebang-pypy3))
(with-fluids ((%default-port-encoding "ISO-8859-1"))
(substitute* '("lib_pypy/_md5.py"
"lib_pypy/_sha1.py")
(substitute* '("lib/pypy3.10/_md5.py"
"lib/pypy3.10/_sha1.py")
((shebang-match-python) shebang-pypy3))))
(copy-recursively dist-dir #$output)))))))
(native-inputs

View File

@ -14,7 +14,7 @@
;;; Copyright © 2021 Roel Janssen <roel@gnu.org>
;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021, 2023 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;; Copyright © 2022 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
@ -420,6 +420,31 @@ manipulation and analysis, in the style of the Polygon object in the Shapely
library.")
(license license:expat)))
(define-public python-meshzoo
(package
(name "python-meshzoo")
(version "0.9.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/diego-hayashi/meshzoo")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "107byfppbq16fqyp2hw7ydcvvahspzq0hzvlvzqg2zxi1aigbr68"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-numpy))
(native-inputs (list python-flit-core python-matplotlib python-pytest))
(home-page "https://github.com/diego-hayashi/meshzoo")
(synopsis "Mesh generator for simple geometries")
(description
"@code{meshzoo} is a mesh generator for finite element or finite
volume computations for simple domains like regular polygons, disks,
spheres, cubes, etc.")
(license license:gpl3+)))
(define-public python-tspex
(package
(name "python-tspex")
@ -843,7 +868,7 @@ functions and around einops with an API and features adapted to xarray.")
(define-public python-pytensor
(package
(name "python-pytensor")
(version "2.17.3")
(version "2.18.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -852,7 +877,7 @@ functions and around einops with an API and features adapted to xarray.")
(file-name (git-file-name name version))
(sha256
(base32
"1694apl8gjdrl6hrfly9yixmfimmmh51vacxmxx63nn4k5qnsgbg"))))
"0qa0y13xfm6w7ry7gp0lv84c8blyg34a9ns7ynwqyhf9majq08s5"))))
(build-system pyproject-build-system)
(arguments
(list
@ -1847,7 +1872,11 @@ for parameterized model creation and handling. Its features include:
(uri (pypi-uri "GPy" version))
(sha256
(base32
"1yx65ajrmqp02ykclhlb0n8s3bx5r0xj075swwwigiqaippr7dx2"))))
"1yx65ajrmqp02ykclhlb0n8s3bx5r0xj075swwwigiqaippr7dx2"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "GPy/models/state_space_main.py"
(("collections\\.Iterable") "collections.abc.Iterable"))))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -1866,6 +1895,31 @@ Python, from the Sheffield machine learning group. GPy implements a range of
machine learning algorithms based on GPs.")
(license license:bsd-3)))
(define-public python-pyfma
(package
(name "python-pyfma")
(version "0.1.6")
(source (origin
(method git-fetch) ;for tests
(uri (git-reference
(url "https://github.com/nschloe/pyfma")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"12i68jj9n1qj9phjnj6f0kmfhlsd3fqjlk9p6d4gs008azw5m8yn"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-numpy))
(native-inputs (list pybind11 python-pytest))
(home-page "https://github.com/nschloe/pyfma")
(synopsis "Fused multiply-add for Python")
(description "@code{pyfma} provides an implementation of fused
multiply-add which computes @code{(x*y) + z} with a single rounding.
This is useful for dot products, matrix multiplications, polynomial
evaluations (e.g., with Horner's rule), Newton's method for evaluating
functions, convolutions, artificial neural networks etc.")
(license license:expat)))
(define-public python-pydicom
(package
(name "python-pydicom")
@ -2038,6 +2092,7 @@ documentation for more information.")
(propagated-inputs
(list python-aplus
python-blake3
python-click ;XXX for dask
python-cloudpickle
python-dask
python-filelock

View File

@ -1330,7 +1330,12 @@ Encryption} (JOSE) Web Standards.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0701hziiiw67blafgpmjhzspmrss8mfvif7fw0rs8fikddwwc9g6"))))
(base32 "0701hziiiw67blafgpmjhzspmrss8mfvif7fw0rs8fikddwwc9g6"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "scss/types.py"
(("from collections import Iterable")
"from collections.abc import Iterable"))))))
(build-system python-build-system)
(arguments
;; XXX: error in test collection, possible incompatibility with Pytest 6.

View File

@ -108,7 +108,7 @@
;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
;;; Copyright © 2021, 2022, 2023 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2021, 2022 Pradana Aumars <paumars@courrier.dev>
;;; Copyright © 2021, 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021, 2022, 2023 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Sébastien Lerique <sl@eauchat.org>
;;; Copyright © 2021 Raphaël Mélotte <raphael.melotte@mind.be>
;;; Copyright © 2021 ZmnSCPxj <ZmnSCPxj@protonmail.com>
@ -2570,13 +2570,13 @@ conventions and aliases in the same expression.")
(define-public python-wand
(package
(name "python-wand")
(version "0.6.11")
(version "0.6.13")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Wand" version))
(sha256
(base32 "15d9kxyc7qvknx0kv27m2jamnmisckyf89i7wlqykwgqm46p0qdn"))))
(base32 "1jpwm956vm35hmgjndr2jwrcql0bwvpsl88q5nr0x8ppxa2380gm"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -3678,7 +3678,12 @@ in the current session, Python, and the OS.")
(uri (pypi-uri "schedule" version))
(sha256
(base32
"0vplyjcbfrq50sphlwya749z8p2pcyi2nycw3518i0qpd9a6189i"))))
"0vplyjcbfrq50sphlwya749z8p2pcyi2nycw3518i0qpd9a6189i"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "schedule/__init__.py"
(("collections\\.Hashable")
"collections.abc.Hashable"))))))
(build-system python-build-system)
(native-inputs
(list python-pytest python-mock))
@ -7469,6 +7474,28 @@ capabilities.")
(description "This package provides the complete NumPy documentation in
the Texinfo, HTML, and PDF formats.")))
(define-public python-npx
(package
(name "python-npx")
(version "0.1.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "npx" version))
(sha256
(base32
"1m0v2p5mh3aqrypl4ipgzvr5nhx7bk5vv9ah2xr9l1xgj6nnmqnc"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-numpy))
(native-inputs (list python-flit-core python-networkx python-pytest))
(home-page "https://github.com/nschloe/npx")
(synopsis "Extensions for NumPy")
(description "NumPy is a large library used everywhere in scientific
computing. That's why breaking backwards-compatibility comes at a
significant cost and is almost always avoided, even if the API of some
methods is arguably lacking. This package provides drop-in wrappers
\"fixing\" those.")
(license license:bsd-3)))
(define-public python-munch
(package
(name "python-munch")
@ -8300,6 +8327,92 @@ Jupyter.")
three-way Venn diagrams in @code{matplotlib}.")
(license license:expat)))
(define-public python-matplotx
(package
(name "python-matplotx")
(version "0.3.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nschloe/matplotx")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1j301mr7ai2jmbm5mkva0jd99fzxhyq585pqzqfmrf5pil8j4q8i"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-matplotlib
python-numpy
;; optional dependencies
python-networkx
python-pypng
python-scipy))
(native-inputs (list python-imageio
python-meshzoo
python-pytest
python-scikit-fem))
(arguments
(list
#:test-flags
;; This test fails with ValueError: not enough values to unpack.
#~(list "--deselect" "tests/test_spy.py::test_cli")))
(home-page "https://github.com/nschloe/matplotx")
(synopsis "Minimal matplotlib styles")
(description
"This package includes some extensions for Matplotlib to create
clean plots with a minimalistic style.")
(license license:expat)))
(define-public python-cplot
(package
(name "python-cplot")
(version "0.9.3")
(source
(origin
(method git-fetch) ;for tests
(uri (git-reference
(url "https://github.com/nschloe/cplot")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0zk7hpq358sbympmkms7w2wjs7nw8mdfvkvdasblg2nhqayv42qz"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-matplotlib
python-matplotx
python-npx
python-numpy))
(native-inputs (list python-pytest))
(home-page "https://github.com/nschloe/cplot")
(synopsis "Plot complex-valued functions")
(description "@code{cplot} is a Python library for plotting
complex-valued functions.")
(license license:gpl3+)))
(define-public python-perfplot
(package
(name "python-perfplot")
(version "0.10.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "perfplot" version))
(sha256
(base32
"0hbyv17f9ra6l6albcrqx4rylmfv2m6z4qsnhb4bar256dralvfp"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-matplotlib
python-matplotx
python-numpy
python-rich))
(native-inputs (list python-flit-core
python-pytest))
(home-page "https://github.com/nschloe/perfplot")
(synopsis "Performance plots for Python code snippets")
(description "@code{perfplot} extends Python's timeit by testing
snippets with input parameters (e.g., the size of an array) and plotting
the results.")
(license license:gpl3+)))
(define-public python-pysnptools
(package
(name "python-pysnptools")
@ -9690,11 +9803,18 @@ Python language binding specification.")
(source
(origin
(method url-fetch)
(uri
(pypi-uri "grako" version ".zip"))
(uri (pypi-uri "grako" version ".zip"))
(sha256
(base32
"0r63i68wcnv63rfjkasq1ah81frz61a6mzbcnaxhrkdpx84p7hzw"))))
(base32 "0r63i68wcnv63rfjkasq1ah81frz61a6mzbcnaxhrkdpx84p7hzw"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "grako/grammars.py"
(("from collections import defaultdict, Mapping")
(string-append "from collections import defaultdict\n"
"from collections.abc import Mapping")))
(substitute* '("grako/util.py"
"grako/walkers.py")
(("collections\\.Mapping") "collections.abc.Mapping"))))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; Test file 'grako.ebnf' is missing from archive.
(native-inputs
@ -13644,19 +13764,8 @@ reading and writing MessagePack data.")
(home-page "https://pypi.org/project/msgpack/")
(license license:asl2.0)))
(define-public python-msgpack-1.0.2
(package
(inherit python-msgpack)
(version "1.0.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "msgpack" version))
(sha256
(base32
"1109s2yynrahwi64ikax68hx0mbclz8p35afmpphw5dwynb49q7s"))))))
;; This msgpack library's name changed from "python-msgpack" to "msgpack" with
;; release 0.5. Some packages like borg still call it by the old name for now.
;; release 0.5. Some packages like poetry still call it by the old name for now.
;; <https://bugs.gnu.org/30662>
(define-public python-msgpack-transitional
(package
@ -17799,13 +17908,13 @@ ISO 8859, etc.).")
(define-public python-pyqtgraph
(package
(name "python-pyqtgraph")
(version "0.13.1")
(version "0.13.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyqtgraph" version))
(sha256
(base32 "026wq2p7h1dmg2ldwhxiv28i5qld0llhnak06dxp4rdrkpsqg3v9"))))
(base32 "1kiazyc8mqyx0479qdcvdclzq0g1hpp93dyq8444w1f72628s42q"))))
(build-system pyproject-build-system)
(arguments
;; This test fails. It suggests to disable assert rewriting in Pytest,
@ -29191,8 +29300,12 @@ workspace...")
(method url-fetch)
(uri (pypi-uri "python-osc" version))
(sha256
(base32
"0cnh0z5lnng7fh48nmfaqqn8j25k13gkd4rhxd3m6sjqiix9s3vn"))))
(base32 "0cnh0z5lnng7fh48nmfaqqn8j25k13gkd4rhxd3m6sjqiix9s3vn"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "pythonosc/udp_client.py"
(("from collections import Iterable")
"from collections.abc import Iterable"))))))
(build-system python-build-system)
(home-page "https://github.com/attwad/python-osc")
(synopsis "Open Sound Control server and client implementations")
@ -34287,6 +34400,28 @@ software by taking care of all interactions with low-level network programming
interfaces.")
(license license:gpl2)))
(define-public python-islenska
(package
(name "python-islenska")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "islenska" version))
(sha256
(base32 "0fdp90mzy0sd4kyw8kd8kybd1ni765fvqn8hz2wx5sqbjjkm4d5k"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-cffi python-typing-extensions))
(home-page "https://github.com/mideind/BinPackage")
(synopsis
"Vocabulary of the modern Icelandic language, in a Python package")
(description
"Islenska is a Python package that embeds the vocabulary of the Database
of Icelandic Morphology and offers various lookups and queries of the data.
The database contains over 6.5 million entries, over 3.1 million unique word
forms, and about 300,000 distinct lemmas.")
(license license:expat)))
(define-public python-zeroc-ice-3.6
(package
(inherit python-zeroc-ice)

View File

@ -680,20 +680,7 @@ developers using C++ or QML, a CSS & JavaScript like language.")
"-DFEATURE_system_sqlite=ON"
"-DFEATURE_system_xcb_xinput=ON"
;; Don't use the precompiled headers.
"-DBUILD_WITH_PCH=OFF"
;; Drop special machine instructions that do not have runtime
;; detection.
,@(if (string-prefix? "x86_64"
(or (%current-target-system)
(%current-system)))
'() ;implicitly enabled
'("-DFEATURE_sse2=OFF"
"-DFEATURE_sse3=OFF"
"-DFEATURE_ssse3=OFF"
"-DFEATURE_sse4_1=OFF"
"-DFEATURE_sse4_2=OFF"))
"-DFEATURE_mips_dsp=OFF"
"-DFEATURE_mips_dspr2=OFF")))
"-DBUILD_WITH_PCH=OFF")))
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'honor-CMAKE_PREFIX_PATH
@ -876,7 +863,8 @@ developers using C++ or QML, a CSS & JavaScript like language.")
"tst_qfiledialog"
;; This test is susceptible to the 600 ms timeout used:
"tst_qpauseanimation")
#$@(if (target-ppc64le?)
#$@(cond
((target-ppc64le?)
#~((list
;; The 'tst_QPainter::fpe_radialGradients'
;; test fails with a 'Floating point
@ -894,8 +882,30 @@ developers using C++ or QML, a CSS & JavaScript like language.")
;; "'Unable to fetch row' || 'database is
;; locked'" (see:
;; https://bugreports.qt.io/browse/QTBUG-117114).
"tst_qsqlthread"))
#~())) "|") ")")))))
"tst_qsqlthread")))
((target-x86-32?)
#~((list
;; QCOMPARE(qRound(actual), expected) returned TRUE
;; unexpectedly.
"tst_qglobal"
;; Actual (llMinDbl == llMin) : 0
;; Expected (-9223372036854775807.0 ==
;; Q_INT64_C(-9223372036854775807)) : 1
"tst_json"
;; 'QVector3D::normal(QVector3D(), v1, v2) ==
;; v3.normalized()' returned FALSE. ()
"tst_qvectornd"
;; Actual (qRed(p)) : 11
;; Expected (qGreen(p)): 10
"tst_qcolorspace"
;; Actual (dv.validate(value, dummy)): Invalid
;; Expected (standard_state) : Intermediate
"tst_qdoublevalidator")))
(else #~()))) "|") ")")))))
(replace 'patch-mkspecs
(lambda* (#:key outputs #:allow-other-keys)
(let* ((archdata (search-input-directory outputs "lib/qt6"))
@ -2954,7 +2964,12 @@ linux/libcurl_wrapper.h")
(lambda _
;; Valid QT_BUILD_PARTS variables are:
;; libs tools tests examples demos docs translations
(invoke "qmake" "QT_BUILD_PARTS = libs tools" "--"
(invoke "qmake"
#$@(if (target-x86-32?)
;; Don't exhaust memory while linking.
#~("QMAKE_LFLAGS+=-Wl,--no-keep-memory -Wl,-z,now")
#~())
"QT_BUILD_PARTS = libs tools" "--"
"--webengine-printing-and-pdf=no"
"--webengine-ffmpeg=system"
;; FIXME: Building qtwebengine-5 5.12.2 with

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