Merge branch 'staging' into core-updates

This commit is contained in:
Marius Bakke 2022-07-22 01:09:14 +02:00
commit 9044b086dd
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
289 changed files with 222361 additions and 156771 deletions

View file

@ -118,9 +118,11 @@
(eval . (put 'munless 'scheme-indent-function 1)) (eval . (put 'munless 'scheme-indent-function 1))
(eval . (put 'mlet* 'scheme-indent-function 2)) (eval . (put 'mlet* 'scheme-indent-function 2))
(eval . (put 'mlet 'scheme-indent-function 2)) (eval . (put 'mlet 'scheme-indent-function 2))
(eval . (put 'mparameterize 'scheme-indent-function 2))
(eval . (put 'run-with-store 'scheme-indent-function 1)) (eval . (put 'run-with-store 'scheme-indent-function 1))
(eval . (put 'run-with-state 'scheme-indent-function 1)) (eval . (put 'run-with-state 'scheme-indent-function 1))
(eval . (put 'wrap-program 'scheme-indent-function 1)) (eval . (put 'wrap-program 'scheme-indent-function 1))
(eval . (put 'wrap-script 'scheme-indent-function 1))
(eval . (put 'with-imported-modules 'scheme-indent-function 1)) (eval . (put 'with-imported-modules 'scheme-indent-function 1))
(eval . (put 'with-extensions 'scheme-indent-function 1)) (eval . (put 'with-extensions 'scheme-indent-function 1))
(eval . (put 'with-parameters 'scheme-indent-function 1)) (eval . (put 'with-parameters 'scheme-indent-function 1))
@ -155,7 +157,31 @@
;; preceding symbol is one of these. ;; preceding symbol is one of these.
(eval . (modify-syntax-entry ?~ "'")) (eval . (modify-syntax-entry ?~ "'"))
(eval . (modify-syntax-entry ?$ "'")) (eval . (modify-syntax-entry ?$ "'"))
(eval . (modify-syntax-entry ?+ "'")))) (eval . (modify-syntax-entry ?+ "'"))
;; Emacs 28 changed the behavior of 'lisp-fill-paragraph', which causes the
;; first line of package descriptions to extrude past 'fill-column', and
;; somehow that is deemed more correct upstream (see:
;; https://issues.guix.gnu.org/56197).
(eval . (progn
(require 'lisp-mode)
(defun emacs27-lisp-fill-paragraph (&optional justify)
(interactive "P")
(or (fill-comment-paragraph justify)
(let ((paragraph-start
(concat paragraph-start
"\\|\\s-*\\([(;\"]\\|\\s-:\\|`(\\|#'(\\)"))
(paragraph-separate
(concat paragraph-separate "\\|\\s-*\".*[,\\.]$"))
(fill-column (if (and (integerp emacs-lisp-docstring-fill-column)
(derived-mode-p 'emacs-lisp-mode))
emacs-lisp-docstring-fill-column
fill-column)))
(fill-paragraph justify))
;; Never return nil.
t))
(setq-local fill-paragraph-function #'emacs27-lisp-fill-paragraph)))))
(emacs-lisp-mode . ((indent-tabs-mode . nil))) (emacs-lisp-mode . ((indent-tabs-mode . nil)))
(texinfo-mode . ((indent-tabs-mode . nil) (texinfo-mode . ((indent-tabs-mode . nil)
(fill-column . 72)))) (fill-column . 72))))

1
.gitignore vendored
View file

@ -68,6 +68,7 @@
/doc/version.texi /doc/version.texi
/doc/version-*.texi /doc/version-*.texi
/etc/committer.scm /etc/committer.scm
/etc/teams.scm
/etc/gnu-store.mount /etc/gnu-store.mount
/etc/guix-daemon.cil /etc/guix-daemon.cil
/etc/guix-daemon.conf /etc/guix-daemon.conf

View file

@ -396,10 +396,10 @@ AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \ gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/guix-emacs.el \ gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/guix.vim \ gnu/packages/aux-files/guix.vim \
gnu/packages/aux-files/linux-libre/5.17-arm.conf \ gnu/packages/aux-files/linux-libre/5.18-arm.conf \
gnu/packages/aux-files/linux-libre/5.17-arm64.conf \ gnu/packages/aux-files/linux-libre/5.18-arm64.conf \
gnu/packages/aux-files/linux-libre/5.17-i686.conf \ gnu/packages/aux-files/linux-libre/5.18-i686.conf \
gnu/packages/aux-files/linux-libre/5.17-x86_64.conf \ gnu/packages/aux-files/linux-libre/5.18-x86_64.conf \
gnu/packages/aux-files/linux-libre/5.15-arm.conf \ gnu/packages/aux-files/linux-libre/5.15-arm.conf \
gnu/packages/aux-files/linux-libre/5.15-arm64.conf \ gnu/packages/aux-files/linux-libre/5.15-arm64.conf \
gnu/packages/aux-files/linux-libre/5.15-i686.conf \ gnu/packages/aux-files/linux-libre/5.15-i686.conf \
@ -668,6 +668,7 @@ EXTRA_DIST += \
etc/release-manifest.scm \ etc/release-manifest.scm \
etc/source-manifest.scm \ etc/source-manifest.scm \
etc/system-tests.scm \ etc/system-tests.scm \
etc/time-travel-manifest.scm \
etc/historical-authorizations \ etc/historical-authorizations \
build-aux/build-self.scm \ build-aux/build-self.scm \
build-aux/compile-all.scm \ build-aux/compile-all.scm \

View file

@ -274,6 +274,7 @@ AC_CONFIG_FILES([Makefile
guix/config.scm]) guix/config.scm])
AC_CONFIG_FILES([etc/committer.scm], [chmod +x etc/committer.scm]) AC_CONFIG_FILES([etc/committer.scm], [chmod +x etc/committer.scm])
AC_CONFIG_FILES([etc/teams.scm], [chmod +x etc/teams.scm])
AC_CONFIG_FILES([test-env:build-aux/test-env.in], [chmod +x test-env]) AC_CONFIG_FILES([test-env:build-aux/test-env.in], [chmod +x test-env])
AC_CONFIG_FILES([pre-inst-env:build-aux/pre-inst-env.in], AC_CONFIG_FILES([pre-inst-env:build-aux/pre-inst-env.in],
[chmod +x pre-inst-env]) [chmod +x pre-inst-env])

View file

@ -29,6 +29,7 @@ choice.
* Tracking Bugs and Patches:: Keeping it all organized. * Tracking Bugs and Patches:: Keeping it all organized.
* Commit Access:: Pushing to the official repository. * Commit Access:: Pushing to the official repository.
* Updating the Guix Package:: Updating the Guix package definition. * Updating the Guix Package:: Updating the Guix package definition.
* Writing Documentation:: Improving documentation in GNU Guix.
* Translating Guix:: Make Guix speak your native language. * Translating Guix:: Make Guix speak your native language.
@end menu @end menu
@ -224,8 +225,7 @@ $ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))'
@noindent @noindent
@cindex REPL @cindex REPL
@cindex read-eval-print loop @cindex read-eval-print loop
@dots{} and for a REPL (@pxref{Using Guile Interactively,,, guile, Guile @dots{} and for a REPL (@pxref{Using Guix Interactively}):
Reference Manual}):
@example @example
$ ./pre-inst-env guile $ ./pre-inst-env guile
@ -278,8 +278,8 @@ prepared Guile object (@file{.go}) files.
You can run @command{make} automatically as you work using You can run @command{make} automatically as you work using
@command{watchexec} from the @code{watchexec} package. For example, @command{watchexec} from the @code{watchexec} package. For example,
to build again each time you update a package file, you can run to build again each time you update a package file, run
@samp{watchexec -w gnu/packages make -j4}. @samp{watchexec -w gnu/packages -- make -j4}.
@node The Perfect Setup @node The Perfect Setup
@section The Perfect Setup @section The Perfect Setup
@ -291,7 +291,7 @@ Manual}). First, you need more than an editor, you need
wonderful @url{https://nongnu.org/geiser/, Geiser}. To set that up, run: wonderful @url{https://nongnu.org/geiser/, Geiser}. To set that up, run:
@example @example
guix package -i emacs guile emacs-geiser emacs-geiser-guile guix install emacs guile emacs-geiser emacs-geiser-guile
@end example @end example
Geiser allows for interactive and incremental development from within Geiser allows for interactive and incremental development from within
@ -664,7 +664,7 @@ hyperlinks (@pxref{Overview,,, texinfo, GNU Texinfo}). However you
should be careful when using some characters for example @samp{@@} and should be careful when using some characters for example @samp{@@} and
curly braces which are the basic special characters in Texinfo curly braces which are the basic special characters in Texinfo
(@pxref{Special Characters,,, texinfo, GNU Texinfo}). User interfaces (@pxref{Special Characters,,, texinfo, GNU Texinfo}). User interfaces
such as @command{guix package --show} take care of rendering it such as @command{guix show} take care of rendering it
appropriately. appropriately.
Synopses and descriptions are translated by volunteers Synopses and descriptions are translated by volunteers
@ -1118,11 +1118,11 @@ Development is done using the Git distributed version control system.
Thus, access to the repository is not strictly necessary. We welcome Thus, access to the repository is not strictly necessary. We welcome
contributions in the form of patches as produced by @code{git contributions in the form of patches as produced by @code{git
format-patch} sent to the @email{guix-patches@@gnu.org} mailing list format-patch} sent to the @email{guix-patches@@gnu.org} mailing list
(@pxref{submitting patches,, Submitting patches to a project, git, Git (@pxref{Submitting patches to a project,,, git, Git User Manual}).
User Manual}). Contributors are encouraged to take a moment to set some Contributors are encouraged to take a moment to set some Git repository
Git repository options (@pxref{Configuring Git}) first, which can options (@pxref{Configuring Git}) first, which can improve the
improve the readability of patches. Seasoned Guix developers may also readability of patches. Seasoned Guix developers may also want to look
want to look at the section on commit access (@pxref{Commit Access}). at the section on commit access (@pxref{Commit Access}).
This mailing list is backed by a Debbugs instance, which allows us to This mailing list is backed by a Debbugs instance, which allows us to
keep track of submissions (@pxref{Tracking Bugs and Patches}). Each keep track of submissions (@pxref{Tracking Bugs and Patches}). Each
@ -1779,6 +1779,47 @@ This check can be disabled, @emph{at your own peril}, by setting the
this variable is set, the updated package source is also added to the this variable is set, the updated package source is also added to the
store. This is used as part of the release process of Guix. store. This is used as part of the release process of Guix.
@cindex documentation
@node Writing Documentation
@section Writing Documentation
Guix is documented using the Texinfo system. If you are not yet
familiar with it, we accept contributions for documentation in most
formats. That includes plain text, Markdown, Org, etc.
Documentation contributions can be sent to
@email{guix-patches@@gnu.org}. Prepend @samp{[DOCUMENTATION]} to the
subject.
When you need to make more than a simple addition to the documentation,
we prefer that you send a proper patch as opposed to sending an email
as described above. @xref{Submitting Patches} for more information on
how to send your patches.
To modify the documentation, you need to edit @file{doc/guix.texi} and
@file{doc/contributing.texi} (which contains this documentation
section), or @file{doc/guix-cookbook.texi} for the cookbook. If
you compiled the Guix repository before, you will have
many more @file{.texi} files that are translations of these
documents. Do not modify them, the translation is managed through
@uref{https://translate.fedoraproject.org/projects/guix, Weblate}.
@xref{Translating Guix} for more information.
To render documentation, you must first make sure that you ran
@command{./configure} in your source tree (@pxref{Running Guix Before
It Is Installed}). After that you can run one of the following
commands:
@itemize
@item @samp{make doc/guix.info} to compile the Info manual.
You can check it with @command{info doc/guix.info}.
@item @samp{make doc/guix.html} to compile the HTML version.
You can point your browser to the relevant file in the
@file{doc/guix.html} directory.
@item @samp{make doc/guix-cookbook.info} for the cookbook Info manual.
@item @samp{make doc/guix-cookbook.html} for the cookbook HTML version.
@end itemize
@cindex translation @cindex translation
@cindex l10n @cindex l10n
@cindex i18n @cindex i18n

View file

@ -122,7 +122,7 @@ language, install it with @code{guix install guile} and start a
@dfn{REPL}---short for @uref{https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop, @dfn{REPL}---short for @uref{https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop,
@dfn{read-eval-print loop}}---by running @code{guile} from the command line. @dfn{read-eval-print loop}}---by running @code{guile} from the command line.
Alternatively you can also run @code{guix environment --ad-hoc guile -- guile} Alternatively you can also run @code{guix shell guile -- guile}
if you'd rather not have Guile installed in your user profile. if you'd rather not have Guile installed in your user profile.
In the following examples, lines show what you would type at the REPL; In the following examples, lines show what you would type at the REPL;
@ -284,24 +284,41 @@ depends on the @code{(guix store)} module and it exports two variables,
@code{ruby-build} and @code{ruby-build-system}. @code{ruby-build} and @code{ruby-build-system}.
@end itemize @end itemize
For a more detailed introduction, check out @quotation Going further
@uref{http://www.troubleshooters.com/codecorn/scheme_guile/hello.htm, Scheme Scheme is a language that has been widely used to teach programming and
at a Glance}, by Steve Litt. you'll find plenty of material using it as a vehicle. Here's a
selection of documents to learn more about Scheme:
One of the reference Scheme books is the seminal ``Structure and @itemize
Interpretation of Computer Programs'', by Harold Abelson and Gerald Jay @item
Sussman, with Julie Sussman. You'll find a @uref{https://spritely.institute/static/papers/scheme-primer.html, @i{A
@uref{https://mitpress.mit.edu/sites/default/files/sicp/index.html, free copy Scheme Primer}}, by Christine Lemmer-Webber and the Spritely Institute.
online}, together with
@uref{https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/video-lectures/, @item
videos of the lectures by the authors}. The book is available in Texinfo @uref{http://www.troubleshooters.com/codecorn/scheme_guile/hello.htm,
format as the @code{sicp} Guix package. Go ahead, run @code{guix install @i{Scheme at a Glance}}, by Steve Litt.
sicp} and start reading with @code{info sicp} (@pxref{Top,,, sicp, Structure and Interpretation of Computer Programs}).
An @uref{https://sarabander.github.io/sicp/, unofficial ebook is also @item
available}. @uref{https://mitpress.mit.edu/sites/default/files/sicp/index.html,
@i{Structure and Interpretation of Computer Programs}}, by Harold
Abelson and Gerald Jay Sussman, with Julie Sussman. Colloquially known
as ``SICP'', this book is a reference.
You can also install it and read it from your computer:
@example
guix install sicp info-reader
info sicp
@end example
An @uref{https://sarabander.github.io/sicp/, unofficial ebook} is also
available.
@end itemize
You'll find more books, tutorials and other resources at You'll find more books, tutorials and other resources at
@url{https://schemers.org/}. @url{https://schemers.org/}.
@end quotation
@c ********************************************************************* @c *********************************************************************
@ -1600,7 +1617,7 @@ letting you know what you're missing. If the file is blank then you're
missing everything. The next step is to run: missing everything. The next step is to run:
@example shell @example shell
guix environment linux-libre -- make localmodconfig guix shell -D linux-libre -- make localmodconfig
@end example @end example
and note the output. Do note that the @file{.config} file is still empty. and note the output. Do note that the @file{.config} file is still empty.
@ -2787,7 +2804,7 @@ Maybe a dependency from our manifest has been updated; or we may have run
garbage-collected. garbage-collected.
@item @item
Eventually, we set to work on that project again, so we run @code{guix environment Eventually, we set to work on that project again, so we run @code{guix shell
-m manifest.scm}. But now we have to wait for Guix to build and install -m manifest.scm}. But now we have to wait for Guix to build and install
stuff! stuff!
@end enumerate @end enumerate

View file

@ -30,7 +30,7 @@ Copyright @copyright{} 2015, 2016 Mathieu Lirzin@*
Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2014 Pierre-Antoine Rault@*
Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@*
Copyright @copyright{} 2015, 2016, 2017, 2019, 2020, 2021 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2019, 2020, 2021 Leo Famulari@*
Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ricardo Wurmus@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Ricardo Wurmus@*
Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016 Ben Woodcroft@*
Copyright @copyright{} 2016, 2017, 2018, 2021 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018, 2021 Chris Marusich@*
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner@* Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner@*
@ -105,6 +105,7 @@ Copyright @copyright{} 2022 Aleksandr Vityazev@*
Copyright @copyright{} 2022 Philip M@sup{c}Grath@* Copyright @copyright{} 2022 Philip M@sup{c}Grath@*
Copyright @copyright{} 2022 Karl Hallsby@* Copyright @copyright{} 2022 Karl Hallsby@*
Copyright @copyright{} 2022 Justin Veilleux@* Copyright @copyright{} 2022 Justin Veilleux@*
Copyright @copyright{} 2022 Reily Siegel@*
Permission is granted to copy, distribute and/or modify this document Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or under the terms of the GNU Free Documentation License, Version 1.3 or
@ -298,6 +299,7 @@ Programming Interface
* The Store Monad:: Purely functional interface to the store. * The Store Monad:: Purely functional interface to the store.
* G-Expressions:: Manipulating build expressions. * G-Expressions:: Manipulating build expressions.
* Invoking guix repl:: Programming Guix in Guile. * Invoking guix repl:: Programming Guix in Guile.
* Using Guix Interactively:: Fine-grain interaction at the REPL.
Defining Packages Defining Packages
@ -7099,6 +7101,7 @@ package definitions.
* The Store Monad:: Purely functional interface to the store. * The Store Monad:: Purely functional interface to the store.
* G-Expressions:: Manipulating build expressions. * G-Expressions:: Manipulating build expressions.
* Invoking guix repl:: Programming Guix in Guile * Invoking guix repl:: Programming Guix in Guile
* Using Guix Interactively:: Fine-grain interaction at the REPL.
@end menu @end menu
@node Package Modules @node Package Modules
@ -8524,14 +8527,8 @@ the number specified as the @option{--cores} option of
This Boolean, @code{#t} by default, determines whether to ``validate'' This Boolean, @code{#t} by default, determines whether to ``validate''
the @code{RUNPATH} of ELF binaries (@code{.so} shared libraries as well the @code{RUNPATH} of ELF binaries (@code{.so} shared libraries as well
as executables) previously installed by the @code{install} phase. as executables) previously installed by the @code{install} phase.
@xref{phase-validate-runpath, the @code{validate-runpath} phase}, for
This validation step consists in making sure that all the shared details.
libraries needed by an ELF binary, which are listed as
@code{DT_NEEDED} entries in its @code{PT_DYNAMIC} segment, appear in the
@code{DT_RUNPATH} entry of that binary. In other words, it ensures that
running or using those binaries will not result in a ``file not found''
error at run time. @xref{Options, @option{-rpath},, ld, The GNU
Linker}, for more information on @code{RUNPATH}.
@item #:substitutable? @item #:substitutable?
This Boolean, @code{#t} by default, tells whether the package outputs This Boolean, @code{#t} by default, tells whether the package outputs
@ -9619,6 +9616,21 @@ Patch shebangs on the installed executable files.
Strip debugging symbols from ELF files (unless @code{#:strip-binaries?} Strip debugging symbols from ELF files (unless @code{#:strip-binaries?}
is false), copying them to the @code{debug} output when available is false), copying them to the @code{debug} output when available
(@pxref{Installing Debugging Files}). (@pxref{Installing Debugging Files}).
@cindex RUNPATH, validation
@anchor{phase-validate-runpath}
@item validate-runpath
Validate the @code{RUNPATH} of ELF binaries, unless
@code{#:validate-runpath?} is false (@pxref{Build Systems}).
This validation step consists in making sure that all the shared
libraries needed by an ELF binary, which are listed as @code{DT_NEEDED}
entries in its @code{PT_DYNAMIC} segment, appear in the
@code{DT_RUNPATH} entry of that binary. In other words, it ensures that
running or using those binaries will not result in a ``file not found''
error at run time. @xref{Options, @option{-rpath},, ld, The GNU
Linker}, for more information on @code{RUNPATH}.
@end table @end table
Other build systems have similar phases, with some variations. For Other build systems have similar phases, with some variations. For
@ -10859,8 +10871,9 @@ So, to exit the monad and get the desired effect, one must use
@end lisp @end lisp
Note that the @code{(guix monad-repl)} module extends the Guile REPL with Note that the @code{(guix monad-repl)} module extends the Guile REPL with
new ``meta-commands'' to make it easier to deal with monadic procedures: new ``commands'' to make it easier to deal with monadic procedures:
@code{run-in-store}, and @code{enter-store-monad}. The former is used @code{run-in-store}, and @code{enter-store-monad} (@pxref{Using Guix
Interactively}). The former is used
to ``run'' a single monadic value through the store: to ``run'' a single monadic value through the store:
@example @example
@ -10885,6 +10898,9 @@ scheme@@(guile-user)>
Note that non-monadic values cannot be returned in the Note that non-monadic values cannot be returned in the
@code{store-monad} REPL. @code{store-monad} REPL.
Other meta-commands are available at the REPL, such as @code{,build} to
build a file-like object (@pxref{Using Guix Interactively}).
The main syntactic forms to deal with monads in general are provided by The main syntactic forms to deal with monads in general are provided by
the @code{(guix monads)} module and are described below. the @code{(guix monads)} module and are described below.
@ -11777,7 +11793,8 @@ lines at the top of the script:
@code{!#} @code{!#}
@end example @end example
Without a file name argument, a Guile REPL is started: Without a file name argument, a Guile REPL is started, allowing for
interactive use (@pxref{Using Guix Interactively}):
@example @example
$ guix repl $ guix repl
@ -11833,6 +11850,132 @@ Inhibit loading of the @file{~/.guile} file. By default, that
configuration file is loaded when spawning a @code{guile} REPL. configuration file is loaded when spawning a @code{guile} REPL.
@end table @end table
@node Using Guix Interactively
@section Using Guix Interactively
@cindex interactive use
@cindex REPL, read-eval-print loop
The @command{guix repl} command gives you access to a warm and friendly
@dfn{read-eval-print loop} (REPL) (@pxref{Invoking guix repl}). If
you're getting into Guix programming---defining your own packages,
writing manifests, defining services for Guix System or Guix Home,
etc.---you will surely find it convenient to toy with ideas at the REPL.
If you use Emacs, the most convenient way to do that is with Geiser
(@pxref{The Perfect Setup}), but you do not have to use Emacs to enjoy
the REPL@. When using @command{guix repl} or @command{guile} in the
terminal, we recommend using Readline for completion and Colorized to
get colorful output. To do that, you can run:
@example
guix install guile guile-readline guile-colorized
@end example
@noindent
... and then create a @file{.guile} file in your home directory containing
this:
@lisp
(use-modules (ice-9 readline) (ice-9 colorized))
(activate-readline)
(activate-colorized)
@end lisp
The REPL lets you evaluate Scheme code; you type a Scheme expression at
the prompt, and the REPL prints what it evaluates to:
@example
$ guix repl
scheme@@(guix-user)> (+ 2 3)
$1 = 5
scheme@@(guix-user)> (string-append "a" "b")
$2 = "ab"
@end example
It becomes interesting when you start fiddling with Guix at the REPL.
The first thing you'll want to do is to ``import'' the @code{(guix)}
module, which gives access to the main part of the programming
interface, and perhaps a bunch of useful Guix modules. You could type
@code{(use-modules (guix))}, which is valid Scheme code to import a
module (@pxref{Using Guile Modules,,, guile, GNU Guile Reference
Manual}), but the REPL provides the @code{use} @dfn{command} as a
shorthand notation (@pxref{REPL Commands,,, guile, GNU Guile Reference
Manual}):
@example
scheme@@(guix-user)> ,use (guix)
scheme@@(guix-user)> ,use (gnu packages base)
@end example
Notice that REPL commands are introduced by a leading comma. A REPL
command like @code{use} is not valid Scheme code; it's interpreted
specially by the REPL.
Guix extends the Guile REPL with additional commands for convenience.
Among those, the @code{build} command comes in handy: it ensures that
the given file-like object is built, building it if needed, and returns
its output file name(s). In the example below, we build the
@code{coreutils} and @code{grep} packages, as well as a ``computed
file'' (@pxref{G-Expressions, @code{computed-file}}), and we use the
@code{scandir} procedure to list the files in Grep's @code{/bin}
directory:
@example
scheme@@(guix-user)> ,build coreutils
$1 = "/gnu/store/@dots{}-coreutils-8.32-debug"
$2 = "/gnu/store/@dots{}-coreutils-8.32"
scheme@@(guix-user)> ,build grep
$3 = "/gnu/store/@dots{}-grep-3.6"
scheme@@(guix-user)> ,build (computed-file "x" #~(mkdir #$output))
building /gnu/store/@dots{}-x.drv...
$4 = "/gnu/store/@dots{}-x"
scheme@@(guix-user)> ,use(ice-9 ftw)
scheme@@(guix-user)> (scandir (string-append $3 "/bin"))
$5 = ("." ".." "egrep" "fgrep" "grep")
@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:
@example
scheme@@(guix-user)> ,lower grep
$6 = #<derivation /gnu/store/@dots{}-grep-3.6.drv => /gnu/store/@dots{}-grep-3.6 7f0e639115f0>
scheme@@(guix-user)> ,lower (plain-file "x" "Hello!")
$7 = "/gnu/store/@dots{}-x"
@end example
The full list of REPL commands can be seen by typing @code{,help guix}
and is given below for reference.
@deffn {REPL command} build @var{object}
Lower @var{object} and build it if it's not already built, returning its
output file name(s).
@end deffn
@deffn {REPL command} lower @var{object}
Lower @var{object} into a derivation or store file name and return it.
@end deffn
@deffn {REPL command} verbosity @var{level}
Change build verbosity to @var{level}.
This is similar to the @option{--verbosity} command-line option
(@pxref{Common Build Options}): level 0 means total silence, level 1
shows build events only, and higher levels print build logs.
@end deffn
@deffn {REPL command} run-in-store @var{exp}
Run @var{exp}, a monadic expresssion, through the store monad.
@xref{The Store Monad}, for more information.
@end deffn
@deffn {REPL command} enter-store-monad
Enter a new REPL to evaluate monadic expressions (@pxref{The Store
Monad}). You can quit this ``inner'' REPL by typing @code{,q}.
@end deffn
@c ********************************************************************* @c *********************************************************************
@node Utilities @node Utilities
@chapter Utilities @chapter Utilities
@ -14002,6 +14145,10 @@ The @option{--input-simplification} option described below provides
fine-grain control over when inputs should be simplified. fine-grain control over when inputs should be simplified.
@end table @end table
@item --list-stylings
@itemx -l
List and describe the available styling rules and exit.
@item --load-path=@var{directory} @item --load-path=@var{directory}
@itemx -L @var{directory} @itemx -L @var{directory}
Add @var{directory} to the front of the package module search path Add @var{directory} to the front of the package module search path
@ -14950,7 +15097,9 @@ any given store item.
The command output looks like this: The command output looks like this:
@smallexample @smallexample
$ guix challenge --substitute-urls="https://@value{SUBSTITUTE-SERVER-1} https://guix.example.org" $ guix challenge \
--substitute-urls="https://@value{SUBSTITUTE-SERVER-1} https://guix.example.org" \
openssl git pius coreutils grep
updating substitutes from 'https://@value{SUBSTITUTE-SERVER-1}'... 100.0% updating substitutes from 'https://@value{SUBSTITUTE-SERVER-1}'... 100.0%
updating substitutes from 'https://guix.example.org'... 100.0% updating substitutes from 'https://guix.example.org'... 100.0%
/gnu/store/@dots{}-openssl-1.0.2d contents differ: /gnu/store/@dots{}-openssl-1.0.2d contents differ:
@ -14977,18 +15126,20 @@ updating substitutes from 'https://guix.example.org'... 100.0%
@dots{} @dots{}
6,406 store items were analyzed: 5 store items were analyzed:
- 4,749 (74.1%) were identical - 2 (40.0%) were identical
- 525 (8.2%) differed - 3 (60.0%) differed
- 1,132 (17.7%) were inconclusive - 0 (0.0%) were inconclusive
@end smallexample @end smallexample
@noindent @noindent
In this example, @command{guix challenge} first scans the store to In this example, @command{guix challenge} queries all the substitute
determine the set of locally-built derivations---as opposed to store servers for each of the fives packages specified on the command line.
items that were downloaded from a substitute server---and then queries It then reports those store items for which the servers obtained a
all the substitute servers. It then reports those store items for which result different from the local build (if it exists) and/or different
the servers obtained a result different from the local build. from one another; here, the @samp{local hash} lines indicate that a
local build result was available for each of these packages and shows
its hash.
@cindex non-determinism, in package builds @cindex non-determinism, in package builds
As an example, @code{guix.example.org} always gets a different answer. As an example, @code{guix.example.org} always gets a different answer.
@ -15044,19 +15195,21 @@ whether @code{@value{SUBSTITUTE-SERVER-1}} and other substitute servers obtain t
same build result as you did with: same build result as you did with:
@example @example
$ guix challenge @var{package} guix challenge @var{package}
@end example @end example
@noindent
where @var{package} is a package specification such as
@code{guile@@2.0} or @code{glibc:debug}.
The general syntax is: The general syntax is:
@example @example
guix challenge @var{options} [@var{packages}@dots{}] guix challenge @var{options} @var{argument}@dots{}
@end example @end example
@noindent
where @var{argument} is a package specification such as
@code{guile@@2.0} or @code{glibc:debug} or, alternatively, a store file
name as returned, for example, by @command{guix build} or @command{guix
gc --list-live}.
When a difference is found between the hash of a locally-built item and When a difference is found between the hash of a locally-built item and
that of a server-provided substitute, or among substitutes provided by that of a server-provided substitute, or among substitutes provided by
different servers, the command displays it as in the example above and different servers, the command displays it as in the example above and
@ -18709,6 +18862,75 @@ String or gexp denoting the corresponding mcron job schedule
@end table @end table
@end deftp @end deftp
@cindex logging, anonymization
@subheading Anonip Service
Anonip is a privacy filter that removes IP address from web server logs.
This service creates a FIFO and filters any written lines with anonip
before writing the filtered log to a target file.
The following example sets up the FIFO
@file{/var/run/anonip/https.access.log} and writes the filtered log file
@file{/var/log/anonip/https.access.log}.
@lisp
(service anonip-service-type
(anonip-configuration
(input "/var/run/anonip/https.access.log")
(output "/var/log/anonip/https.access.log")))
@end lisp
Configure your web server to write its logs to the FIFO at
@file{/var/run/anonip/https.access.log} and collect the anonymized log
file at @file{/var/web-logs/https.access.log}.
@deftp {Data Type} anonip-configuration
This data type represents the configuration of anonip.
It has the following parameters:
@table @asis
@item @code{anonip} (default: @code{anonip})
The anonip package to use.
@item @code{input}
The file name of the input log file to process. The service creates a
FIFO of this name. The web server should write its logs to this FIFO.
@item @code{output}
The file name of the processed log file.
@end table
The following optional settings may be provided:
@table @asis
@item @code{skip-private?}
When @code{#true} do not mask addresses in private ranges.
@item @code{column}
A 1-based indexed column number. Assume IP address is in the specified
column (default is 1).
@item @code{replacement}
Replacement string in case address parsing fails, e.g. @code{"0.0.0.0"}.
@item @code{ipv4mask}
Number of bits to mask in IPv4 addresses.
@item @code{ipv6mask}
Number of bits to mask in IPv6 addresses.
@item @code{increment}
Increment the IP address by the given number. By default this is zero.
@item @code{delimiter}
Log delimiter string.
@item @code{regex}
Regular expression for detecting IP addresses. Use this instead of @code{column}.
@end table
@end deftp
@node Networking Setup @node Networking Setup
@subsection Networking Setup @subsection Networking Setup
@ -28507,6 +28729,9 @@ prefix @samp{unix:}. For addresses using an IP address or domain name,
the default port is 80, and a different port can be specified the default port is 80, and a different port can be specified
explicitly. explicitly.
@item @code{extra-content}
A string or list of strings to add to the upstream block.
@end table @end table
@end deftp @end deftp
@ -35082,6 +35307,11 @@ allocation plan in the database.
An association list of hooks. These provide a way to execute arbitrary An association list of hooks. These provide a way to execute arbitrary
code upon certain events, like a build result being processed. code upon certain events, like a build result being processed.
@item @code{parallel-hooks} (default: @var{'()})
Hooks can be configured to run in parallel. This parameter is an
association list of hooks to do in parallel, where the key is the symbol
for the hook and the value is the number of threads to run.
@item @code{guile} (default: @code{guile-3.0-latest}) @item @code{guile} (default: @code{guile-3.0-latest})
The Guile package with which to run the Guix Build Coordinator. The Guile package with which to run the Guix Build Coordinator.
@ -37527,6 +37757,13 @@ bootloader boot menu:
Describe the running system generation: its file name, the kernel and Describe the running system generation: its file name, the kernel and
bootloader used, etc., as well as provenance information when available. bootloader used, etc., as well as provenance information when available.
The @code{--list-installed} flag is available, with the same
syntax that is used in @command{guix package --list-installed}
(@pxref{Invoking guix package}). When the flag is used,
the description will include a list of packages that are currently
installed in the system profile, with optional filtering based on a
regular expression.
@quotation Note @quotation Note
The @emph{running} system generation---referred to by The @emph{running} system generation---referred to by
@file{/run/current-system}---is not necessarily the @emph{current} @file{/run/current-system}---is not necessarily the @emph{current}
@ -37554,6 +37791,11 @@ generations that are up to 10 days old:
$ guix system list-generations 10d $ guix system list-generations 10d
@end example @end example
The @code{--list-installed} flag may also be specified, with the same
syntax that is used in @command{guix package --list-installed}. This
may be helpful if trying to determine when a package was added to the
system.
@end table @end table
The @command{guix system} command has even more to offer! The following The @command{guix system} command has even more to offer! The following
@ -39313,6 +39555,7 @@ services)}.
* Shepherd: Shepherd Home Service. Managing User's Daemons. * Shepherd: Shepherd Home Service. Managing User's Daemons.
* SSH: Secure Shell. Setting up the secure shell client. * SSH: Secure Shell. Setting up the secure shell client.
* Desktop: Desktop Home Services. Services for graphical environments. * Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
@end menu @end menu
@c In addition to that Home Services can provide @c In addition to that Home Services can provide
@ -39541,6 +39784,23 @@ contents of the extensions will be added to the end of the corresponding
Bash configuration files (@pxref{Bash Startup Files,,, bash, The GNU Bash configuration files (@pxref{Bash Startup Files,,, bash, The GNU
Bash Reference Manual}. Bash Reference Manual}.
For example, here is how you would define a service that extends the
Bash service such that @file{~/.bash_profile} defines an additional
environment variable, @env{PS1}:
@lisp
(define bash-fancy-prompt-service
(simple-service 'bash-fancy-prompt
home-bash-service-type
(home-bash-extension
(environment-variables
'(("PS1" . "\\u \\wλ "))))))
@end lisp
You would then add @code{bash-fancy-prompt-service} to the list in the
@code{services} field of your @code{home-environment}. The reference of
@code{home-bash-extension} follows.
@deftp {Data Type} home-bash-extension @deftp {Data Type} home-bash-extension
Available @code{home-bash-extension} fields are: Available @code{home-bash-extension} fields are:
@ -39953,6 +40213,37 @@ format.
@end deftp @end deftp
@node Guix Home Services
@subsection Guix Home Services
The @code{(gnu home services guix)} module provides services for
user-specific Guix configuration.
@defvr {Scheme Variable} home-channels-service-type
This is the service type for managing
@file{$XDG_CONFIG_HOME/guix/channels.scm}, the file that controls the
channels received on @command{guix pull} (@pxref{Channels}). Its
associated value is a list of @code{channel} records, defined in the
@code{(guix channels)} module.
Generally, it is better to extend this service than to directly
configure it, as its default value is the default guix channel(s)
defined by @code{%default-channels}. If you configure this service
directly, be sure to include a guix channel. @xref{Specifying
Additional Channels} and @ref{Using a Custom Guix Channel} for more
details.
A typical extension for adding a channel might look like this:
@lisp
(simple-service 'variant-packages-service
home-channels-service-type
(list
(channel
(name 'variant-packages)
(url "https://example.org/variant-packages.git")))
@end lisp
@end defvr
@node Invoking guix home @node Invoking guix home
@section Invoking @code{guix home} @section Invoking @code{guix home}
@ -40192,6 +40483,17 @@ install anything.
Describe the current home generation: its file name, as well as Describe the current home generation: its file name, as well as
provenance information when available. provenance information when available.
To show installed packages in the current home generation's profile, the
@code{--list-installed} flag is provided, with the same syntax that is
used in @command{guix package --list-installed} (@pxref{Invoking guix
package}). For instance, the following command shows a table of all the
packages with ``emacs'' in their name that are installed in the current
home generation's profile:
@example
guix home describe --list-installed=emacs
@end example
@item list-generations @item list-generations
List a summary of each generation of the home environment available on List a summary of each generation of the home environment available on
disk, in a human-readable way. This is similar to the disk, in a human-readable way. This is similar to the
@ -40204,9 +40506,14 @@ generations displayed. For instance, the following command displays
generations that are up to 10 days old: generations that are up to 10 days old:
@example @example
$ guix home list-generations 10d guix home list-generations 10d
@end example @end example
The @code{--list-installed} flag may also be specified, with the same
syntax that is used in @command{guix home describe}. This may be
helpful if trying to determine when a package was added to the home
profile.
@item import @item import
Generate a @dfn{home environment} from the packages in the default Generate a @dfn{home environment} from the packages in the default
profile and configuration files found in the user's home directory. The profile and configuration files found in the user's home directory. The
@ -40634,6 +40941,16 @@ package, you can try and import it (@pxref{Invoking guix import}):
guix import texlive @var{package} guix import texlive @var{package}
@end example @end example
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
@quotation Note @quotation Note
@TeX{} Live packaging is still very much work in progress, but you can @TeX{} Live packaging is still very much work in progress, but you can
help! @xref{Contributing}, for more information. help! @xref{Contributing}, for more information.

View file

@ -504,6 +504,16 @@ sys_create_init_profile()
# This will not take effect until the next shell or desktop session! # This will not take effect until the next shell or desktop session!
[ -d "/etc/profile.d" ] || mkdir /etc/profile.d # Just in case [ -d "/etc/profile.d" ] || mkdir /etc/profile.d # Just in case
cat <<"EOF" > /etc/profile.d/guix.sh cat <<"EOF" > /etc/profile.d/guix.sh
# Explicitly initialize XDG base directory variables to ease compatibility
# with Guix System: see <https://issues.guix.gnu.org/56050#3>.
export XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
export XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}"
export XDG_DATA_DIRS="${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/}"
export XDG_CONFIG_DIRS="${XDG_CONFIG_DIRS:-/etc/xdg}"
export XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
# no default for XDG_RUNTIME_DIR (depends on foreign distro for semantics)
# _GUIX_PROFILE: `guix pull` profile # _GUIX_PROFILE: `guix pull` profile
_GUIX_PROFILE="$HOME/.config/guix/current" _GUIX_PROFILE="$HOME/.config/guix/current"
export PATH="$_GUIX_PROFILE/bin${PATH:+:}$PATH" export PATH="$_GUIX_PROFILE/bin${PATH:+:}$PATH"
@ -514,7 +524,9 @@ export PATH="$_GUIX_PROFILE/bin${PATH:+:}$PATH"
export INFOPATH="$_GUIX_PROFILE/share/info:$INFOPATH" export INFOPATH="$_GUIX_PROFILE/share/info:$INFOPATH"
# GUIX_PROFILE: User's default profile # GUIX_PROFILE: User's default profile
GUIX_PROFILE="$HOME/.guix-profile" # Prefer the one from 'guix home' if it exists.
GUIX_PROFILE="$HOME/.guix-home/profile"
[ -L $GUIX_PROFILE ] || GUIX_PROFILE="$HOME/.guix-profile"
[ -L $GUIX_PROFILE ] || return [ -L $GUIX_PROFILE ] || return
GUIX_LOCPATH="$GUIX_PROFILE/lib/locale" GUIX_LOCPATH="$GUIX_PROFILE/lib/locale"
export GUIX_LOCPATH export GUIX_LOCPATH
@ -522,7 +534,7 @@ export GUIX_LOCPATH
[ -f "$GUIX_PROFILE/etc/profile" ] && . "$GUIX_PROFILE/etc/profile" [ -f "$GUIX_PROFILE/etc/profile" ] && . "$GUIX_PROFILE/etc/profile"
# set XDG_DATA_DIRS to include Guix installations # set XDG_DATA_DIRS to include Guix installations
export XDG_DATA_DIRS="$GUIX_PROFILE/share:${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/}" export XDG_DATA_DIRS="$GUIX_PROFILE/share:$XDG_DATA_DIRS"
EOF EOF
} }

View file

@ -25,6 +25,16 @@
(channel-news (channel-news
(version 0) (version 0)
(entry (commit "2ec7ab2610eb67e26dab52b671eb29e46f64ea0f")
(title
(en "Linux-libre kernel updated to 5.18")
(de "Linux-libre-Kernel wird auf 5.18 aktualisiert"))
(body
(en "The default version of the linux-libre kernel has been
updated to the 5.18 release series.")
(de "Der standardmäßig verwendete @code{linux-libre}-Kernel basiert
jetzt auf der 5.18-Versionsreihe.")))
(entry (commit "bdf422176739b473add66eb8cac9fdd8c654f794") (entry (commit "bdf422176739b473add66eb8cac9fdd8c654f794")
(title (title
(en "@option{-L} option of @command{guix refresh} repurposed") (en "@option{-L} option of @command{guix refresh} repurposed")

View file

@ -43,21 +43,6 @@ determined."
(repository-close! repository)) (repository-close! repository))
#f)))) #f))))
(define-syntax mparameterize
(syntax-rules ()
"This form implements dynamic scoping, similar to 'parameterize', but in a
monadic context."
((_ monad ((parameter value) rest ...) body ...)
(let ((old-value (parameter)))
(mbegin monad
;; XXX: Non-local exits are not correctly handled.
(return (parameter value))
(mlet monad ((result (mparameterize monad (rest ...) body ...)))
(parameter old-value)
(return result)))))
((_ monad () body ...)
(mbegin monad body ...))))
(define (tests-for-current-guix source commit) (define (tests-for-current-guix source commit)
"Return a list of tests for perform, using Guix built from SOURCE, a channel "Return a list of tests for perform, using Guix built from SOURCE, a channel
instance." instance."

310
etc/teams.scm.in Normal file
View file

@ -0,0 +1,310 @@
#!@GUILE@ \
--no-auto-compile -s
!#
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; 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/>.
;;; Commentary:
;; This code defines development teams and team members.
;;; Code:
(use-modules (srfi srfi-1)
(srfi srfi-9)
(ice-9 format)
(ice-9 match)
(guix ui))
(define-record-type <team>
(make-team id name description members)
team?
(id team-id)
(name team-name)
(description team-description)
(members team-members set-team-members!))
(define-record-type <person>
(make-person name email)
person?
(name person-name)
(email person-email))
(define* (person name #:optional email)
(make-person name email))
(define* (team id #:key name description (members '()))
(make-team id
(or name (symbol->string id))
description
members))
(define %teams
(make-hash-table))
(define-syntax define-team
(lambda (x)
(syntax-case x ()
((_ id value)
#`(begin
(define-public id value)
(hash-set! %teams 'id id))))))
(define-syntax-rule (define-member person teams ...)
(let ((p person))
(for-each (lambda (team-id)
(let ((team
(hash-ref %teams team-id
(lambda ()
(error (format #false
"Unknown team ~a for ~a~%"
team-id p))))))
(set-team-members!
team (cons p (team-members team)))))
(quote (teams ...)))))
(define-team python
(team 'python
#:name "Python team"
#:description
"Python, Python packages, the \"pypi\" importer, and the python-build-system."))
(define-team haskell
(team 'haskell
#:name "Haskell team"
#:description
"GHC, Hugs, Haskell packages, the \"hackage\" and \"stackage\" importers, and
the haskell-build-system."))
(define-team r
(team 'r
#:name "R team"
#:description
"The R language, CRAN and Bioconductor repositories, the \"cran\" importer,
and the r-build-system."))
(define-team julia
(team 'julia
#:name "Julia team"
#:description
"The Julia language, Julia packages, and the julia-build-system."))
(define-team ocaml
(team 'ocaml
#:name "OCaml and Dune team"
#:description
"The OCaml language, the Dune build system, OCaml packages, the \"opam\"
importer, and the ocaml-build-system."))
(define-team java
(team 'java
#:name "Java and Maven team"
#:description
"The JDK and JRE, the Maven build system, Java packages, the ant-build-system,
and the maven-build-system."))
(define-team science
(team 'science
#:name "Science team"))
(define-team emacs
(team 'emacs
#:name "Emacs team"))
(define-team lisp
(team 'lisp
#:name "Lisp team"))
(define-team ruby
(team 'ruby
#:name "Ruby team"))
(define-team go
(team 'go
#:name "Go team"))
(define-team embedded-bootstrap
(team 'embedded-bootstrap
#:name "Embedded / Bootstrap"))
(define-team rust
(team 'rust
#:name "Rust"))
(define-team kernel
(team 'kernel
#:name "Linux-libre kernel team"))
(define-team core
(team 'core
#:name "Core / Tools / Internals"))
(define-team games
(team 'games
#:name "Games and Videos"))
(define-team translations
(team 'translations
#:name "Translations"))
(define-team installer
(team 'installer
#:name "Installer script and system installer"))
(define-team home
(team 'home
#:name "Team for \"guix home\""))
(define-team mentors
(team 'mentors
#:name "Mentors"
#:description
"A group of mentors who chaperone contributions by newcomers."))
(define-team mozilla
(team 'mozilla
#:name "Mozilla"
"Taking care about Icecat and Icedove, built from Mozilla Firefox
and Thunderbird."))
(define-member (person "Thiago Jung Bauermann"
"bauermann@kolabnow.com")
embedded-bootstrap translations)
(define-member (person "Lars-Dominik Braun"
"lars@6xq.net")
python haskell)
(define-member (person "Jonathan Brielmaier"
"jonathan.brielmaier@web.de")
mozilla)
(define-member (person "Ludovic Courtès"
"ludo@gnu.org")
core home embedded-bootstrap mentors)
(define-member (person "Andreas Enge"
"andreas@enge.fr")
science)
(define-member (person "Björn Höfling"
"bjoern.hoefling@bjoernhoefling.de")
java)
(define-member (person "Leo Famulari"
"leo@famulari.name")
kernel)
(define-member (person "Efraim Flashner"
"efraim@flashner.co.il")
embedded-bootstrap julia rust science)
(define-member (person "jgart"
"jgart@dismail.de")
python lisp mentors)
(define-member (person "Julien Lepiller"
"julien@lepiller.eu")
java ocaml translations)
(define-member (person "Florian Pelz"
"pelzflorian@pelzflorian.de")
translations)
(define-member (person "Liliana Marie Prikler"
"liliana.prikler@gmail.com")
emacs games)
(define-member (person "Ricardo Wurmus"
"rekado@elephly.net")
r core mentors)
(define-member (person "Christopher Baines"
"mail@cbaines.net")
core mentors ruby)
(define (find-team name)
(or (hash-ref %teams (string->symbol name))
(error (format #false
"no such team: ~a~%" name))))
(define (cc . teams)
"Return arguments for `git send-email' to notify the members of the given
TEAMS when a patch is received by Debbugs."
(format #true
"~{--add-header=\"X-Debbugs-Cc: ~a\"~^ ~}"
(map person-email
(delete-duplicates (append-map team-members teams) equal?))))
(define* (list-members team #:optional port (prefix ""))
"Print the members of the given TEAM."
(define port* (or port (current-output-port)))
(for-each
(lambda (member)
(format port*
"~a~a <~a>~%"
prefix
(person-name member)
(person-email member)))
(team-members team)))
(define (list-teams)
"Print all teams and their members."
(define port* (current-output-port))
(define width* (%text-width))
(hash-for-each
(lambda (key team)
(format port*
"\
id: ~a
name: ~a
description: ~a
members:
"
(team-id team)
(team-name team)
(or (and=> (team-description team)
(lambda (text)
(string->recutils
(fill-paragraph text width*
(string-length "description: ")))))
"<none>"))
(list-members team port* "+ ")
(newline))
%teams))
(define (main . args)
(match args
(("cc" . team-names)
(apply cc (map find-team team-names)))
(("list-teams" . args)
(list-teams))
(("list-members" . team-names)
(for-each
(lambda (team-name)
(list-members (find-team team-name)))
team-names))
(anything
(format (current-error-port)
"Usage: etc/teams.scm <command> [<args>]~%"))))
(apply main (cdr (command-line)))

View file

@ -0,0 +1,84 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest containing entries to build past Guix
;;; releases from the current Guix, as per 'guix time-machine'.
(use-modules (srfi srfi-9) (ice-9 match)
(guix channels) (guix gexp)
((guix store) #:select (%store-monad))
((guix monads) #:select (mparameterize return))
((guix git) #:select (%repository-cache-directory))
((guix build utils) #:select (mkdir-p)))
;; Representation of the latest channels. This type exists just so we can
;; refer to such records in a gexp.
(define-record-type <guix-instance>
(guix-instance channels)
guix-instance?
(channels guix-instance-channels))
(define-gexp-compiler (guix-instance-compiler (instance <guix-instance>)
system target)
(match instance
(($ <guix-instance> channels)
;; When this manifest is evaluated by Cuirass, make sure it does not
;; fiddle with the cached checkout that Cuirass is also using since
;; concurrent accesses are unsafe.
(mparameterize %store-monad ((%repository-cache-directory
(string-append (%repository-cache-directory)
"/time-travel")))
(return (mkdir-p (%repository-cache-directory)))
(latest-channel-derivation channels)))))
(define (guix-instance->manifest-entry instance)
"Return a manifest entry for INSTANCE."
(define (shorten commit)
(string-take commit 7))
(manifest-entry
(name "guix")
(version (string-join (map (compose shorten channel-commit)
(guix-instance-channels instance))
"-"))
(item instance)))
(define (commit->guix-instance commit)
"Return a Guix instance for COMMIT."
(guix-instance (list (channel
(inherit %default-guix-channel)
(commit commit)))))
(define %release-commits
;; Release commits: the list of version/commit pairs.
'(("1.3.0" . "a0178d34f582b50e9bdbb0403943129ae5b560ff")
("1.2.0" . "a099685659b4bfa6b3218f84953cbb7ff9e88063")
("1.1.0" . "d62c9b2671be55ae0305bebfda17b595f33797f2")
("1.0.1" . "d68de958b60426798ed62797ff7c96c327a672ac")
("1.0.0" . "6298c3ffd9654d3231a6f25390b056483e8f407c")
("0.16.0" . "4a0b87f0ec5b6c2dcf82b372dd20ca7ea6acdd9c")))
(manifest
(map (match-lambda
((version . commit)
(let ((entry (guix-instance->manifest-entry
(commit->guix-instance commit))))
(manifest-entry
(inherit entry)
(version version)))))
%release-commits))

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -19,10 +20,9 @@
(define-module (gnu build chromium-extension) (define-module (gnu build chromium-extension)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (gnu packages chromium)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages xorg) #:use-module (gnu packages node-xyz)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:export (make-chromium-extension)) #:export (make-chromium-extension))
@ -69,24 +69,14 @@ in PACKAGE-OUTPUT of PACKAGE. The extension will be signed with SIGNING-KEY."
(string-append name "-" version ".crx") (string-append name "-" version ".crx")
(with-imported-modules '((guix build utils)) (with-imported-modules '((guix build utils))
#~(begin #~(begin
;; This is not great. We pull Xorg and Chromium just to Zip and
;; sign an extension. This should be implemented with something
;; lighter. (TODO: where is the CRXv3 documentation..?)
(use-modules (guix build utils)) (use-modules (guix build utils))
(let ((chromium #$(file-append ungoogled-chromium "/bin/chromium")) (let ((crx3 #+(file-append node-crx3 "/bin/crx3"))
(xvfb #$(file-append xorg-server "/bin/Xvfb"))
(packdir (string-append (getcwd) "/extension"))) (packdir (string-append (getcwd) "/extension")))
(mkdir packdir) (mkdir packdir)
(copy-recursively (ungexp package package-output) packdir (copy-recursively (ungexp package package-output) packdir
;; Ensure consistent file modification times. ;; Ensure consistent file modification times.
#:keep-mtime? #t) #:keep-mtime? #t)
(system (string-append xvfb " :1 &")) (invoke crx3 "--keyPath" #$signing-key packdir)
(setenv "DISPLAY" ":1")
(sleep 2) ;give Xorg some time to initialize...
(invoke chromium
"--user-data-dir=chromium-profile"
(string-append "--pack-extension=" packdir)
(string-append "--pack-extension-key=" #$signing-key))
(copy-file (string-append packdir ".crx") #$output)))) (copy-file (string-append packdir ".crx") #$output))))
#:local-build? #t)) #:local-build? #t))

View file

@ -52,6 +52,8 @@
read-partition-uuid read-partition-uuid
read-luks-partition-uuid read-luks-partition-uuid
cleanly-unmounted-ext2?
bind-mount bind-mount
system*/tty system*/tty
@ -193,6 +195,23 @@ NUL terminator, return the size of the bytevector."
if DEVICE does not contain an ext2 file system." if DEVICE does not contain an ext2 file system."
(read-superblock device 1024 264 ext2-superblock?)) (read-superblock device 1024 264 ext2-superblock?))
(define (ext2-superblock-cleanly-unmounted? sblock)
"Return true if SBLOCK denotes a file system that was cleanly unmounted,
false otherwise."
(define EXT2_VALID_FS 1) ;cleanly unmounted
(define EXT2_ERROR_FS 2) ;errors detected
(define EXT3_FEATURE_INCOMPAT_RECOVER #x0004) ;journal needs recovery
(let ((state (bytevector-u16-ref sblock 58 %ext2-endianness)))
(cond ((= state EXT2_VALID_FS)
(let ((incompatible-features
(bytevector-u32-ref sblock 96 %ext2-endianness)))
(zero? (logand incompatible-features
EXT3_FEATURE_INCOMPAT_RECOVER))))
((= state EXT2_ERROR_FS) #f)
(else (error "invalid ext2 superblock state" state)))))
(define (ext2-superblock-uuid sblock) (define (ext2-superblock-uuid sblock)
"Return the UUID of ext2 superblock SBLOCK as a 16-byte bytevector." "Return the UUID of ext2 superblock SBLOCK as a 16-byte bytevector."
(sub-bytevector sblock 104 16)) (sub-bytevector sblock 104 16))
@ -220,6 +239,11 @@ errors. Otherwise, fix only those considered safe to repair automatically."
(2 'reboot-required) (2 'reboot-required)
(_ 'fatal-error))) (_ 'fatal-error)))
(define (cleanly-unmounted-ext2? device) ;convenience procedure
"Return true if DEVICE is an ext2 file system and if it was cleanly
unmounted."
(ext2-superblock-cleanly-unmounted? (read-ext2-superblock device)))
;;; ;;;
;;; Linux swap. ;;; Linux swap.

View file

@ -46,6 +46,7 @@
home-run-on-change-service-type home-run-on-change-service-type
home-provenance-service-type home-provenance-service-type
environment-variable-shell-definitions
home-files-directory home-files-directory
xdg-configuration-files-directory xdg-configuration-files-directory
xdg-data-files-directory xdg-data-files-directory
@ -169,6 +170,34 @@ packages, configuration files, activation script, and so on.")))
configuration files that the user has declared in their configuration files that the user has declared in their
@code{home-environment} record."))) @code{home-environment} record.")))
(define (environment-variable-shell-definitions variables)
"Return a gexp that evaluates to a list of POSIX shell statements defining
VARIABLES, a list of environment variable name/value pairs. The returned code
ensures variable values are properly quoted."
#~(let ((shell-quote
(lambda (value)
;; Double-quote VALUE, leaving dollar sign as is.
(let ((quoted (list->string
(string-fold-right
(lambda (chr lst)
(case chr
((#\" #\\)
(append (list chr #\\) lst))
(else (cons chr lst))))
'()
value))))
(string-append "\"" quoted "\"")))))
(string-append
#$@(map (match-lambda
((key . #f)
"")
((key . #t)
#~(string-append "export " #$key "\n"))
((key . value)
#~(string-append "export " #$key "="
(shell-quote #$value) "\n")))
variables))))
(define (environment-variables->setup-environment-script vars) (define (environment-variables->setup-environment-script vars)
"Return a file that can be sourced by a POSIX compliant shell which "Return a file that can be sourced by a POSIX compliant shell which
initializes the environment. The file will source the home initializes the environment. The file will source the home
@ -181,7 +210,7 @@ If value is @code{#f} variable will be omitted.
If value is @code{#t} variable will be just exported. If value is @code{#t} variable will be just exported.
For any other, value variable will be set to the @code{value} and For any other, value variable will be set to the @code{value} and
exported." exported."
(define (warn-about-duplicate-defenitions) (define (warn-about-duplicate-definitions)
(fold (fold
(lambda (x acc) (lambda (x acc)
(when (equal? (car x) (car acc)) (when (equal? (car x) (car acc))
@ -192,15 +221,18 @@ exported."
(sort vars (lambda (a b) (sort vars (lambda (a b)
(string<? (car a) (car b)))))) (string<? (car a) (car b))))))
(warn-about-duplicate-defenitions) (warn-about-duplicate-definitions)
(with-monad (with-monad
%store-monad %store-monad
(return (return
`(("setup-environment" `(("setup-environment"
;; TODO: It's necessary to source ~/.guix-profile too ;; TODO: It's necessary to source ~/.guix-profile too
;; on foreign distros ;; on foreign distros
,(apply mixed-text-file "setup-environment" ,(computed-file "setup-environment"
"\ #~(call-with-output-file #$output
(lambda (port)
(set-port-encoding! port "UTF-8")
(display "\
HOME_ENVIRONMENT=$HOME/.guix-home HOME_ENVIRONMENT=$HOME/.guix-home
GUIX_PROFILE=\"$HOME_ENVIRONMENT/profile\" GUIX_PROFILE=\"$HOME_ENVIRONMENT/profile\"
PROFILE_FILE=\"$HOME_ENVIRONMENT/profile/etc/profile\" PROFILE_FILE=\"$HOME_ENVIRONMENT/profile/etc/profile\"
@ -227,17 +259,10 @@ case $XCURSOR_PATH in
*) export XCURSOR_PATH=$HOME_ENVIRONMENT/profile/share/icons:$XCURSOR_PATH ;; *) export XCURSOR_PATH=$HOME_ENVIRONMENT/profile/share/icons:$XCURSOR_PATH ;;
esac esac
" " port)
(display
(append-map #$(environment-variable-shell-definitions vars)
(match-lambda port)))))))))
((key . #f)
'())
((key . #t)
(list "export " key "\n"))
((key . value)
(list "export " key "=" value "\n")))
vars)))))))
(define home-environment-variables-service-type (define home-environment-variables-service-type
(service-type (name 'home-environment-variables) (service-type (name 'home-environment-variables)

View file

@ -0,0 +1,44 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Reily Siegel <mail@reilysiegel.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 home services guix)
#:use-module (gnu home services)
#:use-module (guix channels)
#:use-module (guix gexp)
#:use-module (ice-9 pretty-print)
#:use-module (srfi srfi-1)
#:export (home-channels-service-type))
(define (channels-xdg-files channels)
`(("guix/channels.scm"
,(plain-file
"channels.scm"
(call-with-output-string
(lambda (port)
(pretty-print (cons 'list (map channel->code channels)) port)))))))
(define home-channels-service-type
(service-type
(name 'home-channels)
(default-value %default-channels)
(compose concatenate)
(extend append)
(extensions
(list (service-extension home-xdg-configuration-files-service-type
channels-xdg-files)))
(description "Manages the per-user Guix channels specification.")))

View file

@ -111,16 +111,7 @@ service type can be extended with a list of file-like objects.")))
(define (serialize-boolean field-name val) "") (define (serialize-boolean field-name val) "")
(define (serialize-posix-env-vars field-name val) (define (serialize-posix-env-vars field-name val)
#~(string-append (environment-variable-shell-definitions val))
#$@(map
(match-lambda
((key . #f)
"")
((key . #t)
#~(string-append "export " #$key "\n"))
((key . value)
#~(string-append "export " #$key "=" #$value "\n")))
val)))
;;; ;;;
@ -192,9 +183,9 @@ another process for example)."))
(mixed-text-file (mixed-text-file
"zprofile" "zprofile"
"\ "\
# Setups system and user profiles and related variables # Set up the system, user profile, and related variables.
source /etc/profile source /etc/profile
# Setups home environment profile # Set up the home environment profile.
source ~/.profile source ~/.profile
# It's only necessary if zsh is a login shell, otherwise profiles will # It's only necessary if zsh is a login shell, otherwise profiles will
@ -443,9 +434,9 @@ alias grep='grep --color=auto'\n")
,(mixed-text-file ,(mixed-text-file
"bash_profile" "bash_profile"
"\ "\
# Setups system and user profiles and related variables # Set up the system, user profile, and related variables.
# /etc/profile will be sourced by bash automatically # /etc/profile will be sourced by bash automatically
# Setups home environment profile # Set up the home environment profile.
if [ -f ~/.profile ]; then source ~/.profile; fi if [ -f ~/.profile ]; then source ~/.profile; fi
# Honor per-interactive-shell startup file # Honor per-interactive-shell startup file
@ -555,9 +546,9 @@ with text blocks from other extensions and the base service."))
((key . #f) ((key . #f)
"") "")
((key . #t) ((key . #t)
#~(string-append "set " #$key "\n")) #~(string-append "set -x " #$key "\n"))
((key . value) ((key . value)
#~(string-append "set " #$key " " #$value "\n"))) #~(string-append "set -x " #$key " " #$value "\n")))
val))) val)))
(define-configuration home-fish-configuration (define-configuration home-fish-configuration

View file

@ -19,6 +19,10 @@
(define-module (gnu image) (define-module (gnu image)
#:use-module (guix platform) #:use-module (guix platform)
#:use-module (guix records) #:use-module (guix records)
#:use-module (guix diagnostics)
#:use-module (guix i18n)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:export (partition #:export (partition
partition? partition?
partition-device partition-device
@ -70,19 +74,38 @@
(label partition-label (default #f)) (label partition-label (default #f))
(uuid partition-uuid (default #f)) (uuid partition-uuid (default #f))
(flags partition-flags (default '())) (flags partition-flags (default '()))
(initializer partition-initializer (default #f))) (initializer partition-initializer (default #f))) ;gexp | #f
;;; ;;;
;;; Image record. ;;; Image record.
;;; ;;;
(define-syntax-rule (define-set-sanitizer name field set)
"Define NAME as a procedure or macro that raises an error if passed a value
that is not in SET, mentioning FIELD in the error message."
(define-with-syntax-properties (name (value properties))
(unless (memq value 'set)
(raise
(make-compound-condition
(condition
(&error-location
(location (source-properties->location properties))))
(formatted-message (G_ "~s: invalid '~a' value") value 'field))))
value))
(define-set-sanitizer validate-image-format format
(disk-image compressed-qcow2 docker iso9660))
(define-set-sanitizer validate-partition-table-type partition-table-type
(mbr gpt))
(define-record-type* <image> (define-record-type* <image>
image make-image image make-image
image? image?
(name image-name ;symbol (name image-name ;symbol
(default #f)) (default #f))
(format image-format) ;symbol (format image-format ;symbol
(sanitize validate-image-format))
(platform image-platform ;<platform> (platform image-platform ;<platform>
(default #f)) (default #f))
(size image-size ;size in bytes as integer (size image-size ;size in bytes as integer
@ -90,7 +113,8 @@
(operating-system image-operating-system ;<operating-system> (operating-system image-operating-system ;<operating-system>
(default #f)) (default #f))
(partition-table-type image-partition-table-type ; 'mbr or 'gpt (partition-table-type image-partition-table-type ; 'mbr or 'gpt
(default 'mbr)) (default 'mbr)
(sanitize validate-partition-table-type))
(partitions image-partitions ;list of <partition> (partitions image-partitions ;list of <partition>
(default '())) (default '()))
(compression? image-compression? ;boolean (compression? image-compression? ;boolean

View file

@ -17,7 +17,7 @@
# Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com> # Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com> # Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net> # Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
# Copyright © 2018, 2019, 2020, 2021 Oleg Pykhalov <go.wigust@gmail.com> # Copyright © 2018, 2019, 2020, 2021, 2022 Oleg Pykhalov <go.wigust@gmail.com>
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com> # Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
# Copyright © 2018, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> # Copyright © 2018, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2019, 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net> # Copyright © 2019, 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
@ -83,6 +83,7 @@ GNU_SYSTEM_MODULES = \
%D%/home/services/desktop.scm \ %D%/home/services/desktop.scm \
%D%/home/services/symlink-manager.scm \ %D%/home/services/symlink-manager.scm \
%D%/home/services/fontutils.scm \ %D%/home/services/fontutils.scm \
%D%/home/services/guix.scm \
%D%/home/services/shells.scm \ %D%/home/services/shells.scm \
%D%/home/services/shepherd.scm \ %D%/home/services/shepherd.scm \
%D%/home/services/ssh.scm \ %D%/home/services/ssh.scm \
@ -953,6 +954,7 @@ dist_patch_DATA = \
%D%/packages/patches/clang-runtime-esan-build-fixes.patch \ %D%/packages/patches/clang-runtime-esan-build-fixes.patch \
%D%/packages/patches/clang-runtime-9-libsanitizer-mode-field.patch \ %D%/packages/patches/clang-runtime-9-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.5-libsanitizer-mode-field.patch \ %D%/packages/patches/clang-runtime-3.5-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.7-fix-build-with-python3.patch \
%D%/packages/patches/clang-runtime-3.9-libsanitizer-mode-field.patch \ %D%/packages/patches/clang-runtime-3.9-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.8-libsanitizer-mode-field.patch \ %D%/packages/patches/clang-runtime-3.8-libsanitizer-mode-field.patch \
%D%/packages/patches/classpath-aarch64-support.patch \ %D%/packages/patches/classpath-aarch64-support.patch \
@ -963,6 +965,7 @@ dist_patch_DATA = \
%D%/packages/patches/cmh-support-fplll.patch \ %D%/packages/patches/cmh-support-fplll.patch \
%D%/packages/patches/coda-use-system-libs.patch \ %D%/packages/patches/coda-use-system-libs.patch \
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \ %D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
%D%/packages/patches/containerd-create-pid-file.patch \
%D%/packages/patches/combinatorial-blas-awpm.patch \ %D%/packages/patches/combinatorial-blas-awpm.patch \
%D%/packages/patches/combinatorial-blas-io-fix.patch \ %D%/packages/patches/combinatorial-blas-io-fix.patch \
%D%/packages/patches/cool-retro-term-wctype.patch \ %D%/packages/patches/cool-retro-term-wctype.patch \
@ -974,6 +977,7 @@ dist_patch_DATA = \
%D%/packages/patches/crda-optional-gcrypt.patch \ %D%/packages/patches/crda-optional-gcrypt.patch \
%D%/packages/patches/clucene-contribs-lib.patch \ %D%/packages/patches/clucene-contribs-lib.patch \
%D%/packages/patches/cube-nocheck.patch \ %D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/curl-easy-lock.patch \
%D%/packages/patches/curl-use-ssl-cert-env.patch \ %D%/packages/patches/curl-use-ssl-cert-env.patch \
%D%/packages/patches/cursynth-wave-rand.patch \ %D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \ %D%/packages/patches/cvs-CVE-2017-12836.patch \
@ -1027,7 +1031,6 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \ %D%/packages/patches/emacs-json-reformat-fix-tests.patch \
%D%/packages/patches/emacs-helpful-fix-docstring-test.patch \ %D%/packages/patches/emacs-helpful-fix-docstring-test.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \ %D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-hyperbole-toggle-messaging.patch \
%D%/packages/patches/emacs-libgit-use-system-libgit2.patch \ %D%/packages/patches/emacs-libgit-use-system-libgit2.patch \
%D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \ %D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
%D%/packages/patches/emacs-source-date-epoch.patch \ %D%/packages/patches/emacs-source-date-epoch.patch \
@ -1073,7 +1076,6 @@ dist_patch_DATA = \
%D%/packages/patches/fp16-system-libraries.patch \ %D%/packages/patches/fp16-system-libraries.patch \
%D%/packages/patches/fpc-reproducibility.patch \ %D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \ %D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freeglut-gcc-compat.patch \
%D%/packages/patches/freeimage-unbundle.patch \ %D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \ %D%/packages/patches/fuse-overlapping-headers.patch \
%D%/packages/patches/fxdiv-system-libraries.patch \ %D%/packages/patches/fxdiv-system-libraries.patch \
@ -1382,7 +1384,6 @@ dist_patch_DATA = \
%D%/packages/patches/libcroco-CVE-2020-12825.patch \ %D%/packages/patches/libcroco-CVE-2020-12825.patch \
%D%/packages/patches/libcyaml-libyaml-compat.patch \ %D%/packages/patches/libcyaml-libyaml-compat.patch \
%D%/packages/patches/libexpected-nofetch.patch \ %D%/packages/patches/libexpected-nofetch.patch \
%D%/packages/patches/libgeotiff-adapt-test-script-for-proj-6.2.patch \
%D%/packages/patches/libgit2-mtime-0.patch \ %D%/packages/patches/libgit2-mtime-0.patch \
%D%/packages/patches/libgnome-encoding.patch \ %D%/packages/patches/libgnome-encoding.patch \
%D%/packages/patches/libgnomeui-utf8.patch \ %D%/packages/patches/libgnomeui-utf8.patch \
@ -1444,6 +1445,8 @@ dist_patch_DATA = \
%D%/packages/patches/llhttp-bootstrap-CVE-2020-8287.patch \ %D%/packages/patches/llhttp-bootstrap-CVE-2020-8287.patch \
%D%/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch \ %D%/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch \
%D%/packages/patches/llvm-3.6-fix-build-with-gcc-10.patch \ %D%/packages/patches/llvm-3.6-fix-build-with-gcc-10.patch \
%D%/packages/patches/llvm-3.x.1-fix-build-with-gcc.patch \
%D%/packages/patches/llvm-8-fix-build-with-gcc-10.patch \
%D%/packages/patches/llvm-9-fix-bitcast-miscompilation.patch \ %D%/packages/patches/llvm-9-fix-bitcast-miscompilation.patch \
%D%/packages/patches/llvm-9-fix-lpad-miscompilation.patch \ %D%/packages/patches/llvm-9-fix-lpad-miscompilation.patch \
%D%/packages/patches/llvm-9-fix-scev-miscompilation.patch \ %D%/packages/patches/llvm-9-fix-scev-miscompilation.patch \
@ -1474,6 +1477,8 @@ dist_patch_DATA = \
%D%/packages/patches/maxima-defsystem-mkdir.patch \ %D%/packages/patches/maxima-defsystem-mkdir.patch \
%D%/packages/patches/maven-generate-component-xml.patch \ %D%/packages/patches/maven-generate-component-xml.patch \
%D%/packages/patches/maven-generate-javax-inject-named.patch \ %D%/packages/patches/maven-generate-javax-inject-named.patch \
%D%/packages/patches/mcrl2-fix-1687.patch \
%D%/packages/patches/mcrl2-fix-counterexample.patch \
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \ %D%/packages/patches/mcrypt-CVE-2012-4409.patch \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \ %D%/packages/patches/mcrypt-CVE-2012-4426.patch \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \ %D%/packages/patches/mcrypt-CVE-2012-4527.patch \
@ -1486,6 +1491,7 @@ dist_patch_DATA = \
%D%/packages/patches/meson-allow-dirs-outside-of-prefix.patch \ %D%/packages/patches/meson-allow-dirs-outside-of-prefix.patch \
%D%/packages/patches/mhash-keygen-test-segfault.patch \ %D%/packages/patches/mhash-keygen-test-segfault.patch \
%D%/packages/patches/mia-fix-boost-headers.patch \ %D%/packages/patches/mia-fix-boost-headers.patch \
%D%/packages/patches/mia-vtk9.patch \
%D%/packages/patches/mingw-w64-6.0.0-gcc.patch \ %D%/packages/patches/mingw-w64-6.0.0-gcc.patch \
%D%/packages/patches/mingw-w64-dlltool-temp-prefix.patch \ %D%/packages/patches/mingw-w64-dlltool-temp-prefix.patch \
%D%/packages/patches/mingw-w64-reproducible-gendef.patch \ %D%/packages/patches/mingw-w64-reproducible-gendef.patch \
@ -1502,6 +1508,7 @@ dist_patch_DATA = \
%D%/packages/patches/mono-mdoc-timestamping.patch \ %D%/packages/patches/mono-mdoc-timestamping.patch \
%D%/packages/patches/mosaicatcher-unbundle-htslib.patch \ %D%/packages/patches/mosaicatcher-unbundle-htslib.patch \
%D%/packages/patches/mrrescue-support-love-11.patch \ %D%/packages/patches/mrrescue-support-love-11.patch \
%D%/packages/patches/mrustc-riscv64-support.patch \
%D%/packages/patches/mtools-mformat-uninitialized.patch \ %D%/packages/patches/mtools-mformat-uninitialized.patch \
%D%/packages/patches/mumps-build-parallelism.patch \ %D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mumps-shared-libseq.patch \ %D%/packages/patches/mumps-shared-libseq.patch \
@ -1578,9 +1585,9 @@ dist_patch_DATA = \
%D%/packages/patches/pam-krb5-CVE-2020-10595.patch \ %D%/packages/patches/pam-krb5-CVE-2020-10595.patch \
%D%/packages/patches/pango-skip-libthai-test.patch \ %D%/packages/patches/pango-skip-libthai-test.patch \
%D%/packages/patches/password-store-tree-compat.patch \ %D%/packages/patches/password-store-tree-compat.patch \
%D%/packages/patches/pitivi-fix-build-with-meson-0.60.patch \
%D%/packages/patches/pjproject-install-libpjsua2.patch \ %D%/packages/patches/pjproject-install-libpjsua2.patch \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \ %D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/pokerth-boost.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \ %D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
%D%/packages/patches/pthreadpool-system-libraries.patch \ %D%/packages/patches/pthreadpool-system-libraries.patch \
%D%/packages/patches/python-chai-drop-python2.patch \ %D%/packages/patches/python-chai-drop-python2.patch \
@ -1636,7 +1643,6 @@ dist_patch_DATA = \
%D%/packages/patches/portaudio-audacity-compat.patch \ %D%/packages/patches/portaudio-audacity-compat.patch \
%D%/packages/patches/portmidi-modular-build.patch \ %D%/packages/patches/portmidi-modular-build.patch \
%D%/packages/patches/postgresql-disable-resolve_symlinks.patch \ %D%/packages/patches/postgresql-disable-resolve_symlinks.patch \
%D%/packages/patches/postgresql-riscv-spinlocks.patch \
%D%/packages/patches/procmail-ambiguous-getline-debian.patch \ %D%/packages/patches/procmail-ambiguous-getline-debian.patch \
%D%/packages/patches/procmail-CVE-2014-3618.patch \ %D%/packages/patches/procmail-CVE-2014-3618.patch \
%D%/packages/patches/procmail-CVE-2017-16844.patch \ %D%/packages/patches/procmail-CVE-2017-16844.patch \
@ -1761,7 +1767,7 @@ dist_patch_DATA = \
%D%/packages/patches/rocm-opencl-runtime-4.3-noopencl.patch \ %D%/packages/patches/rocm-opencl-runtime-4.3-noopencl.patch \
%D%/packages/patches/ruby-mustache-1.1.1-fix-race-condition-tests.patch \ %D%/packages/patches/ruby-mustache-1.1.1-fix-race-condition-tests.patch \
%D%/packages/patches/ruby-sanitize-system-libxml.patch \ %D%/packages/patches/ruby-sanitize-system-libxml.patch \
%D%/packages/patches/rustc-1.39.0-src.patch \ %D%/packages/patches/rustc-1.54.0-src.patch \
%D%/packages/patches/rust-adblock-ignore-live-tests.patch \ %D%/packages/patches/rust-adblock-ignore-live-tests.patch \
%D%/packages/patches/i3status-rust-enable-unstable-features.patch \ %D%/packages/patches/i3status-rust-enable-unstable-features.patch \
%D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \ %D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
@ -1828,6 +1834,7 @@ dist_patch_DATA = \
%D%/packages/patches/tar-remove-wholesparse-check.patch \ %D%/packages/patches/tar-remove-wholesparse-check.patch \
%D%/packages/patches/tar-skip-unreliable-tests.patch \ %D%/packages/patches/tar-skip-unreliable-tests.patch \
%D%/packages/patches/tbb-fix-test-on-aarch64.patch \ %D%/packages/patches/tbb-fix-test-on-aarch64.patch \
%D%/packages/patches/tbb-other-arches.patch \
%D%/packages/patches/tclxml-3.2-install.patch \ %D%/packages/patches/tclxml-3.2-install.patch \
%D%/packages/patches/tcsh-fix-autotest.patch \ %D%/packages/patches/tcsh-fix-autotest.patch \
%D%/packages/patches/teensy-loader-cli-help.patch \ %D%/packages/patches/teensy-loader-cli-help.patch \
@ -1937,8 +1944,6 @@ dist_patch_DATA = \
%D%/packages/patches/x265-arm-flags.patch \ %D%/packages/patches/x265-arm-flags.patch \
%D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\ %D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \ %D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
%D%/packages/patches/xf86-video-mach64-bool-to-boolean.patch \
%D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \
%D%/packages/patches/xf86-video-nouveau-fixup-ABI.patch \ %D%/packages/patches/xf86-video-nouveau-fixup-ABI.patch \
%D%/packages/patches/xf86-video-qxl-fix-build.patch \ %D%/packages/patches/xf86-video-qxl-fix-build.patch \
%D%/packages/patches/xf86-video-savage-xorg-compat.patch \ %D%/packages/patches/xf86-video-savage-xorg-compat.patch \

View file

@ -328,7 +328,18 @@ interface and is based on GNU Guile.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0l2arn6gsyw88xk9phxnyplvv1mn8sqp3ipgyyb0nszdzvxlgd36")))) "0l2arn6gsyw88xk9phxnyplvv1mn8sqp3ipgyyb0nszdzvxlgd36"))
(modules '((guix build utils)))
(snippet
;; Avoid continuation barriers so (@ (fibers) sleep) can be
;; called from a service's 'stop' method
'(substitute* "modules/shepherd/service.scm"
(("call-with-blocked-asyncs") ;in 'stop' method
"(lambda (thunk) (thunk))")
(("\\(for-each-service\n") ;in 'shutdown-services'
"((lambda (proc)
(for-each proc
(fold-services cons '())))\n")))))
(arguments (arguments
(list #:configure-flags #~'("--localstatedir=/var") (list #:configure-flags #~'("--localstatedir=/var")
#:make-flags #~'("GUILE_AUTO_COMPILE=0") #:make-flags #~'("GUILE_AUTO_COMPILE=0")
@ -2133,7 +2144,7 @@ command.")
(native-inputs (native-inputs
;; For icons. ;; For icons.
(modify-inputs (package-native-inputs wpa-supplicant) (modify-inputs (package-native-inputs wpa-supplicant)
(prepend imagemagick inkscape))) (prepend imagemagick inkscape/stable)))
(arguments (arguments
`(#:phases (modify-phases %standard-phases `(#:phases (modify-phases %standard-phases
(add-after 'unpack 'chdir (add-after 'unpack 'chdir
@ -2267,24 +2278,23 @@ network, which causes enabled computers to power on.")
(define-public dmidecode (define-public dmidecode
(package (package
(name "dmidecode") (name "dmidecode")
(version "3.3") (version "3.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://savannah/dmidecode/dmidecode-" (uri (string-append "mirror://savannah/dmidecode/dmidecode-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 "0m8lzg9rf1qssasiix672bxk5qwms90561g8hfkkhk31h2kkgiw2")))) (base32 "04i2ahvqinkrnzfsbswplv9wff36xf9b3snvriwrjz26v18sijs3"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no 'check' target (list #:tests? #f ; no 'check' target
#:make-flags #:make-flags
(list (string-append "CC=" ,(cc-for-target)) #~(list (string-append "CC=" #$(cc-for-target))
(string-append "prefix=" (string-append "prefix=" #$output))
(assoc-ref %outputs "out"))) #:phases
#:phases #~(modify-phases %standard-phases
(modify-phases %standard-phases (delete 'configure)))) ; no configure script
(delete 'configure)))) ; no configure script
(home-page "https://www.nongnu.org/dmidecode/") (home-page "https://www.nongnu.org/dmidecode/")
(synopsis "Read hardware information from the BIOS") (synopsis "Read hardware information from the BIOS")
(description (description
@ -2624,6 +2634,9 @@ various ways that may be running with too much privilege.")
(base32 (base32
"1mlc25sd5rgj5xmzcllci47inmfdw7cp185fday6hc9rwqkqmnaw")))) "1mlc25sd5rgj5xmzcllci47inmfdw7cp185fday6hc9rwqkqmnaw"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
(list #:make-flags
#~(list "BUILD_INFO=\"(Guix)\"")))
(inputs (list libcap-ng)) (inputs (list libcap-ng))
(home-page "https://www.smartmontools.org/") (home-page "https://www.smartmontools.org/")
(synopsis "S.M.A.R.T. harddisk control and monitoring tools") (synopsis "S.M.A.R.T. harddisk control and monitoring tools")
@ -4183,7 +4196,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi")) (let ((real-name "inxi"))
(package (package
(name "inxi-minimal") (name "inxi-minimal")
(version "3.3.15-1") (version "3.3.19-1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -4192,7 +4205,7 @@ Python loading in HPC environments.")
(commit version))) (commit version)))
(file-name (git-file-name real-name version)) (file-name (git-file-name real-name version))
(sha256 (sha256
(base32 "02zy94bd6ayfl9y7ka6gk32q254k49cbq3a6wgi31r2fcvybyrf7")))) (base32 "0g5m43cj4534gb181zy1hwjz5il88xibf8psxw8a4s6jnaq1zdlk"))))
(build-system trivial-build-system) (build-system trivial-build-system)
(inputs (inputs
`(("bash" ,bash-minimal) `(("bash" ,bash-minimal)

View file

@ -2,7 +2,7 @@
;;; Copyright © 2014 John Darringon <jmd@gnu.org> ;;; Copyright © 2014 John Darringon <jmd@gnu.org>
;;; Copyright © 2016, 2020, 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Leo Famulari <leo@famulari.name> ;;; Copyright © 2020 Leo Famulari <leo@famulari.name>
;;; ;;;
@ -23,6 +23,7 @@
(define-module (gnu packages aidc) (define-module (gnu packages aidc)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
@ -148,7 +149,7 @@ characters, and is highly robust.")
(define-public libdmtx (define-public libdmtx
(package (package
(name "libdmtx") (name "libdmtx")
(version "0.7.5") (version "0.7.7")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -157,11 +158,11 @@ characters, and is highly robust.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0wk3fkxzf9ip75v8ia54v6ywx72ajp5s6777j4ay8barpbv869rj")))) (base32 "0s95gplvb6x7gnl48yn7ywa9r15lfm8k2m60wm9i7w75ay4bq32i"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
;; XXX Test suite is broken: https://github.com/dmtx/libdmtx/issues/22 (list #:configure-flags
`(#:tests? #f)) #~(list "--disable-static")))
(native-inputs (native-inputs
(list autoconf automake libtool pkg-config)) (list autoconf automake libtool pkg-config))
(home-page "https://github.com/dmtx") (home-page "https://github.com/dmtx")

View file

@ -325,7 +325,7 @@ precision.")
(define-public giac (define-public giac
(package (package
(name "giac") (name "giac")
(version "1.7.0-51") (version "1.9.0-19")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -337,7 +337,7 @@ precision.")
"~parisse/debian/dists/stable/main/source/" "~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz")) "giac_" version ".tar.gz"))
(sha256 (sha256
(base32 "0wgqa2nxpv652348fxpchx5zvaj6ssc403jxwsdp5ky9pdpap2zs")))) (base32 "1zl3wpw4mwsc2zm2mnxnajxql0df68mlfyivbkk4i300wjfqkdvb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list

View file

@ -918,6 +918,51 @@ astronomy and astrophysics.")
to access online Astronomical data. Each web service has its own sub-package.") to access online Astronomical data. Each web service has its own sub-package.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public python-cdflib
(package
(name "python-cdflib")
(version "0.4.4")
(source
(origin
(method git-fetch) ; no tests in pypi archive
(uri (git-reference
(url "https://github.com/MAVENSDC/cdflib")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1h7750xvr6qbhnl2w3bhccs3pwp3hci3624pvvxym0yjinmskjlz"))))
(build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "HOME" (getcwd))
(invoke "pytest" "-vv" "tests")))))))
(propagated-inputs
(list python-attrs python-numpy))
(native-inputs
(list python-astropy
python-hypothesis
python-pytest
python-pytest-cov
python-pytest-remotedata
python-xarray))
(home-page "https://github.com/MAVENSDC/cdflib")
(synopsis "Python library to deal with NASA's CDF astronmical data format")
(description "This package provides a Python CDF reader toolkit
It provides the following functionality:
@itemize
@item Ability to read variables and attributes from CDF files
@item Writes CDF version 3 files
@item Can convert between CDF time types (EPOCH/EPOCH16/TT2000) to other common
time formats
@item Can convert CDF files into XArray Dataset objects and vice versa,
attempting to maintain ISTP compliance
@end itemize\n")
(license license:expat)))
(define-public python-photutils (define-public python-photutils
(package (package
(name "python-photutils") (name "python-photutils")

View file

@ -37,6 +37,7 @@
;;; Copyright © 2021 jgart <jgart@dismail.de> ;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org> ;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Arjan Adriaanse <arjan@adriaan.se> ;;; Copyright © 2022 Arjan Adriaanse <arjan@adriaan.se>
;;; Copyright © 2022 Juliana Sims <jtsims@protonmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -1158,7 +1159,7 @@ envelope follower, distortion effects, tape effects and more.")
(define-public snapcast (define-public snapcast
(package (package
(name "snapcast") (name "snapcast")
(version "0.24.0") (version "0.26.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1167,7 +1168,7 @@ envelope follower, distortion effects, tape effects and more.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"13yz8alplnqwkcns3mcli01qbyy6l3h62xx0v71ygcrz371l4g9g")))) "091gf3k1xv3k0m0kf2apr9bwiifw2czjcksd3vzwy544sfgrya08"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:tests? #f)) ; no included tests '(#:tests? #f)) ; no included tests
@ -1914,10 +1915,44 @@ also play midifiles using a Soundfont.")
"Faust is a programming language for realtime audio signal processing.") "Faust is a programming language for realtime audio signal processing.")
(license license:gpl2+))) (license license:gpl2+)))
;; This version is needed to build older synths that require the lv2synth.cpp
;; architecture file, such as sorcer.
(define-public faust-0.9.67
(package
(inherit faust)
(name "faust")
(version "0.9.67")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/grame-cncm/faust")
(commit (string-append "v"
(string-map (lambda (c)
(if (char=? c #\.) #\- c))
version)))))
(file-name (git-file-name name version))
(sha256
(base32
"0856x666s6ymzk8v15f9gy402dbr8c9v2s40hyfadhraqljmqrm0"))
(snippet
;; Remove prebuilt library
'(delete-file "architecture/android/libs/armeabi-v7a/libfaust_dsp.so"))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list (string-append "prefix=" #$output))
#:tests? #f
#:phases
'(modify-phases %standard-phases
;; no "configure" script
(delete 'configure))))
(native-inputs (list unzip))))
(define-public faust-2 (define-public faust-2
(package (package
(inherit faust) (inherit faust)
(version "2.5.23") (version "2.41.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/grame-cncm/faust/" (uri (string-append "https://github.com/grame-cncm/faust/"
@ -1925,15 +1960,29 @@ also play midifiles using a Soundfont.")
"/faust-" version ".tar.gz")) "/faust-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1yz5jnr76hh7rmxkpdi7gyrw1wp4gyqfpq8zyl97qdi5ga5gjznq")))) "0gk8ifxrbykq7ay0nvjns8fjryhp0wfhv5npgrl8xpgw9wfmw53j"))))
(build-system gnu-build-system) (build-system cmake-build-system)
(arguments (arguments
(substitute-keyword-arguments (package-arguments faust) `(#:tests? #f ; no tests
((#:make-flags flags) #:phases
`(list (string-append "prefix=" (assoc-ref %outputs "out")) (modify-phases %standard-phases
"world")))) ;; The upstream package uses make to run cmake during the build stage.
;; Here we ignore the Makefile and call cmake directly.
(replace 'configure
(lambda _
(chdir "build")
(invoke "cmake" "-C" "backends/all.cmake"
(string-append "-DCMAKE_INSTALL_PREFIX="
(assoc-ref %outputs "out")))))
;; The sound2faust tool would be built in the Makefile's "world" target
(add-after 'install 'sound2faust
(lambda _
(chdir "../tools/sound2faust")
(setenv "PREFIX" (assoc-ref %outputs "out"))
(invoke "make")
(invoke "make" "install"))))))
(native-inputs (native-inputs
`(("llvm" ,llvm-3.8) `(("llvm" ,llvm)
("which" ,which) ("which" ,which)
("xxd" ,xxd) ("xxd" ,xxd)
("ctags" ,emacs-minimal) ; for ctags ("ctags" ,emacs-minimal) ; for ctags
@ -2748,6 +2797,38 @@ add functionality to support the needs of increasingly powerful audio
software.") software.")
(license license:isc))) (license license:isc)))
(define-public ttl2c
(package
(name "ttl2c")
(version "1.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lvtk/ttl2c")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0aybx8i5i0sridi9130a3937xgmfmjkk8m48f9whvhlhbzwy3xbl"))))
(build-system waf-build-system)
(arguments
(list
#:tests? #false ;no check target
#:phases
`(modify-phases %standard-phases
(add-before 'configure 'setup-waf
(lambda* (#:key inputs #:allow-other-keys)
(let ((waf (assoc-ref inputs "python-waf")))
(copy-file (string-append waf "/bin/waf") "waf")))))))
(inputs (list boost))
(native-inputs (list python-waf))
(home-page "https://github.com/lvtk/ttl2c")
(synopsis "Turtle to C header conversion utility for LV2 plugins")
(description
"This package provides a conversion utility for LV2 Plugin developers to
generate C headers from Turtle files.")
(license license:gpl3+)))
(define-public lv2-mda-piano (define-public lv2-mda-piano
(package (package
(name "lv2-mda-piano") (name "lv2-mda-piano")
@ -2771,7 +2852,7 @@ software.")
(inputs (inputs
(list lv2 lvtk)) (list lv2 lvtk))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config ttl2c))
(native-search-paths (native-search-paths
(list (search-path-specification (list (search-path-specification
(variable "LV2_PATH") (variable "LV2_PATH")
@ -2794,14 +2875,14 @@ software.")
(synopsis "LV2 port of the mda EPiano plugin") (synopsis "LV2 port of the mda EPiano plugin")
(description "An LV2 port of the mda EPiano VSTi."))) (description "An LV2 port of the mda EPiano VSTi.")))
(define-public lvtk (define-public lvtk-2
;; Use the latest commit, as the latest release was made in 2014 and depends ;; Use the latest commit, as the latest release was made in 2014 and depends
;; on Python 2. ;; on Python 2.
(let ((commit "a73feabe772f9650aa071e6a4df660e549ab7c48") (let ((commit "a73feabe772f9650aa071e6a4df660e549ab7c48")
(revision "0")) (revision "0"))
(package (package
(name "lvtk") (name "lvtk")
(version (git-version "1.2.0" revision commit)) (version (git-version "2" revision commit))
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -2823,6 +2904,49 @@ extensions into easy to use C++ classes. It is the successor of
lv2-c++-tools.") lv2-c++-tools.")
(license license:isc)))) (license license:isc))))
(define-public lvtk-1
;; Use the latest commit, as the latest release was made in 2014 and depends
;; on Python 2.
(let ((commit "23dd99531d88d7821b69f6f0d60516ef322a6729")
(revision "0"))
(package
(name "lvtk")
(version (git-version "1.2.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lvtk/lvtk")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0iw7skvsn3whw69dhcxbbdns7mssaf6z6iyzxjav53607ibyfr8d"))))
(build-system waf-build-system)
(arguments
(list
#:tests? #false ;no check target
#:configure-flags
#~(list (string-append "--boost-includes="
#$(this-package-input "boost")
"/include"))
#:phases
`(modify-phases %standard-phases
(add-before 'configure 'setup-waf
(lambda* (#:key inputs #:allow-other-keys)
(let ((waf (assoc-ref inputs "python-waf")))
(copy-file (string-append waf "/bin/waf") "waf")))))))
(inputs (list boost gtkmm lv2))
(native-inputs (list pkg-config python-waf))
(home-page "https://github.com/lvtk/lvtk")
(synopsis "C++ libraries for LV2 plugins")
(description
"The LV2 Toolkit (LVTK) contains libraries that wrap the LV2 C API and
extensions into easy to use C++ classes. It is the successor of
lv2-c++-tools.")
(license license:isc))))
(define-public lvtk lvtk-1)
(define-public openal (define-public openal
(package (package
(name "openal") (name "openal")
@ -5713,3 +5837,33 @@ source and extracts a 24-bit high resolution WAV file. It handles both DST
and DSD streams.") and DSD streams.")
(home-page "https://tari.in/www/software/odio-sacd/") (home-page "https://tari.in/www/software/odio-sacd/")
(license license:gpl3+))) (license license:gpl3+)))
(define-public qpwgraph
(package
(name "qpwgraph")
(version "0.3.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/rncbc/qpwgraph")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1xqmlbqj6ny4cpclzr8xyy6d6i392h9f1vmlbasp6xfy5b0yya94"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;; no tests
(inputs (list alsa-lib
pipewire-0.3
;; qtsvg is still on version 5; use qtbase-5 to match
qtbase-5
qtsvg))
(native-inputs (list pkg-config))
(synopsis "PipeWire graph manager")
(description
"qpwgraph is a graph manager dedicated to PipeWire, using the Qt C++
framework. It provides a visual interface to audio and video connections
managed by PipeWire.")
(home-page "https://gitlab.freedesktop.org/rncbc/qpwgraph")
(license license:gpl2)))

View file

@ -520,18 +520,6 @@ complexity of working with shared libraries across platforms.")
(license gpl3+) (license gpl3+)
(home-page "https://www.gnu.org/software/libtool/"))) (home-page "https://www.gnu.org/software/libtool/")))
(define-public libtool-2.4.7
(package
(inherit libtool)
(version "2.4.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libtool/libtool-"
version ".tar.xz"))
(sha256
(base32
"0pb3l4x37k6fj1lwnpzws55gi3pxl0hx56jm4bzmbrkw0mzj2zsg"))))))
(define-public config (define-public config
(let ((revision "1") (let ((revision "1")
(commit "c8ddc8472f8efcadafc1ef53ca1d863415fddd5f")) (commit "c8ddc8472f8efcadafc1ef53ca1d863415fddd5f"))

View file

@ -5848,7 +5848,7 @@ CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMD_DC_SI=y CONFIG_DRM_AMD_DC_SI=y
# end of Display Engine Configuration # end of Display Engine Configuration
# CONFIG_HSA_AMD is not set CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
CONFIG_NOUVEAU_PLATFORM_DRIVER=y CONFIG_NOUVEAU_PLATFORM_DRIVER=y

View file

@ -6304,7 +6304,7 @@ CONFIG_DRM_AMD_DC_SI=y
# CONFIG_DEBUG_KERNEL_DC is not set # CONFIG_DEBUG_KERNEL_DC is not set
# end of Display Engine Configuration # end of Display Engine Configuration
# CONFIG_HSA_AMD is not set CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG=5

View file

@ -6100,7 +6100,7 @@ CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMD_DC_SI=y CONFIG_DRM_AMD_DC_SI=y
# end of Display Engine Configuration # end of Display Engine Configuration
# CONFIG_HSA_AMD is not set CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
CONFIG_NOUVEAU_PLATFORM_DRIVER=y CONFIG_NOUVEAU_PLATFORM_DRIVER=y

View file

@ -6482,7 +6482,7 @@ CONFIG_DRM_AMD_DC_DCN=y
CONFIG_DRM_AMD_SECURE_DISPLAY=y CONFIG_DRM_AMD_SECURE_DISPLAY=y
# end of Display Engine Configuration # end of Display Engine Configuration
# CONFIG_HSA_AMD is not set CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG=5

View file

@ -5523,7 +5523,7 @@ CONFIG_DRM_AMD_DC=y
# CONFIG_DEBUG_KERNEL_DC is not set # CONFIG_DEBUG_KERNEL_DC is not set
# end of Display Engine Configuration # end of Display Engine Configuration
# CONFIG_HSA_AMD is not set CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
CONFIG_NOUVEAU_PLATFORM_DRIVER=y CONFIG_NOUVEAU_PLATFORM_DRIVER=y

View file

@ -6108,7 +6108,7 @@ CONFIG_DRM_AMD_DC_DSC_SUPPORT=y
# CONFIG_DEBUG_KERNEL_DC is not set # CONFIG_DEBUG_KERNEL_DC is not set
# end of Display Engine Configuration # end of Display Engine Configuration
# CONFIG_HSA_AMD is not set CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set # CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
CONFIG_NOUVEAU_DEBUG=5 CONFIG_NOUVEAU_DEBUG=5

View file

@ -1189,7 +1189,7 @@ additional snapshots).")
uthash uthash
zlib)) zlib))
(native-inputs (native-inputs
(list autoconf automake check-0.14 pkg-config)) (list autoconf automake check pkg-config))
(home-page "https://burp.grke.org") (home-page "https://burp.grke.org")
(synopsis "Differential backup and restore") (synopsis "Differential backup and restore")
(description "Burp is a network backup and restore program. It attempts (description "Burp is a network backup and restore program. It attempts

View file

@ -4,6 +4,7 @@
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;

View file

@ -63,10 +63,11 @@
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (ice-9 match)) #:use-module (ice-9 match))
;; Lazily resolve the gcc-toolchain to avoid a circular dependency. ;; Lazily resolve the gcc-toolchain to avoid a circular dependency. Always
;; use the latest available toolchain to avoid conflicts in user profiles.
(define gcc-toolchain* (define gcc-toolchain*
(delay (module-ref (resolve-interface '(gnu packages commencement)) (delay (module-ref (resolve-interface '(gnu packages commencement))
'gcc-toolchain))) 'gcc-toolchain-12)))
(define-public fio (define-public fio
(package (package

View file

@ -1987,6 +1987,112 @@ using the linear model features implemented in limma. Standard Bioconductor
objects are used so that other packages could be used as well.") objects are used so that other packages could be used as well.")
(license license:gpl3))) (license license:gpl3)))
(define-public r-amountain
(package
(name "r-amountain")
(version "1.22.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "AMOUNTAIN" version))
(sha256
(base32
"0vdfabsrisdd7qq28f5ivd0v8zz49szqn677i5lhwnlaix220c54"))))
(properties `((upstream-name . "AMOUNTAIN")))
(build-system r-build-system)
(inputs (list gsl))
(native-inputs (list r-knitr))
(home-page "https://bioconductor.org/packages/AMOUNTAIN")
(synopsis "Modules for multilayer weighted gene co-expression networks")
(description
"This package provides a pure data-driven gene network, @dfn{WGCN}(weighted
gene co-expression network) could be constructed only from expression profile.
Different layers in such networks may represent different time points, multiple
conditions or various species. @code{AMOUNTAIN} aims to search active modules
in multi-layer WGCN using a continuous optimization approach.")
(license license:gpl2+)))
(define-public r-amaretto
(package
(name "r-amaretto")
(version "1.12.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "AMARETTO" version))
(sha256
(base32
"111dk19b9910icksyr592cvhc5gwvgknr5q4887j9yxbajd7hcmx"))))
(properties `((upstream-name . "AMARETTO")))
(build-system r-build-system)
(propagated-inputs
(list r-biocfilecache
r-callr
r-circlize
r-complexheatmap
r-curatedtcgadata
r-doparallel
r-dplyr
r-dt
r-foreach
r-ggplot2
r-glmnet
r-gridextra
r-httr
r-impute
r-knitr
r-limma
r-matrix
r-matrixstats
r-multiassayexperiment
r-rcpp
r-readr
r-reshape2
r-rmarkdown
r-tibble))
(native-inputs (list r-knitr))
(home-page "https://bioconductor.org/packages/AMARETTO")
(synopsis "Regulatory network inference and driver gene evaluation")
(description
"This package @code{AMARETTO} represents an algorithm that integrates copy
number, DNA methylation and gene expression data to identify a set of driver
genes by analyzing cancer samples and connects them to clusters of co-expressed
genes, which we define as modules. @code{AMARETTO} can be applied in a pancancer
setting to identify cancer driver genes and their modules on multiple cancer
sites. @code{AMARETTO} captures modules enriched in angiogenesis, cell cycle
and EMT, and modules that accurately predict survival and molecular subtypes.
This allows @code{AMARETTO} to identify novel cancer driver genes directing
canonical cancer pathways.")
(license license:asl2.0)))
(define-public r-anaquin
(package
(name "r-anaquin")
(version "2.20.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "Anaquin" version))
(sha256
(base32
"1jgpnls2djl1yzvnk64qc83mljmlci7wflwkza3wr0sv6r47b0dd"))))
(properties `((upstream-name . "Anaquin")))
(build-system r-build-system)
(propagated-inputs
(list r-deseq2
r-ggplot2
r-knitr
r-locfit
r-plyr
r-qvalue
r-rocr))
(native-inputs (list r-knitr))
(home-page "https://www.sequinstandards.com/")
(synopsis "Statistical analysis of sequins")
(description
"The project is intended to support the use of @dfn{sequins}(synthetic
sequencing spike-in controls) owned and made available by the Garvan Institute
of Medical Research. The goal is to provide a standard open source library for
quantitative analysis, modelling and visualization of spike-in controls.")
(license license:bsd-3)))
(define-public r-aneufinder (define-public r-aneufinder
(package (package
(name "r-aneufinder") (name "r-aneufinder")
@ -2029,6 +2135,94 @@ calling, plotting, export and analysis from whole-genome single cell
sequencing data.") sequencing data.")
(license license:artistic2.0))) (license license:artistic2.0)))
(define-public r-anf
(package
(name "r-anf")
(version "1.18.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "ANF" version))
(sha256
(base32
"1fa2pbdapymrpz01ws0m2fbzf11d723x6rbsys29v06is57f5lpj"))))
(properties `((upstream-name . "ANF")))
(build-system r-build-system)
(propagated-inputs
(list r-biobase
r-igraph
r-mass
r-rcolorbrewer
r-survival))
(native-inputs (list r-knitr))
(home-page "https://bioconductor.org/packages/ANF")
(synopsis "Affinity network fusion for complex patient clustering")
(description
"The package @dfn{ANF}(Affinity Network Fusion) provides methods for affinity
matrix construction and fusion as well as spectral clustering. This package is
used for complex patient clustering by integrating multi-omic data through affinity
network fusion.")
(license license:gpl3)))
(define-public r-annmap
(package
(name "r-annmap")
(version "1.38.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "annmap" version))
(sha256
(base32
"0ywqbb8jia7rrkzcsf6a11kqf8dnx96z8n8xw7067mahycykbixv"))))
(properties `((upstream-name . "annmap")))
(build-system r-build-system)
(propagated-inputs
(list r-biobase
r-biocgenerics
r-dbi
r-digest
r-genefilter
r-genomicranges
r-iranges
r-lattice
r-rmysql
r-rsamtools))
(home-page "https://github.com/cruk-mi/annmap")
(synopsis
"Genome annotation and visualisation for Affymetrix arrays and NGS analysis")
(description
"This package @code{annmap} provides annotation mappings for Affymetrix exon
arrays and coordinate based queries to support deep sequencing data analysis.
Database access is hidden behind the API which provides a set of functions such
as @code{genesInRange()}, @code{geneToExon()}, @code{exonDetails()}, etc.
Functions to plot gene architecture and BAM file data are also provided.")
(license license:gpl2)))
(define-public r-antiprofiles
(package
(name "r-antiprofiles")
(version "1.36.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "antiProfiles" version))
(sha256
(base32
"1277kg5xpyb2yriyjy18p437q5lj22h4al7z7pygkzxzywxv9g40"))))
(properties `((upstream-name . "antiProfiles")))
(build-system r-build-system)
(propagated-inputs
(list r-locfit
r-matrixstats))
(home-page "https://github.com/HCBravoLab/antiProfiles")
(synopsis "Implementation of gene expression anti-profiles")
(description
"This package implements the gene expression anti-profiles method.
Anti-profiles are a new approach for developing cancer genomic signatures that
specifically take advantage of gene expression heterogeneity. They explicitly
model increased gene expression variability in cancer to define robust and
reproducible gene expression signatures capable of accurately distinguishing
tumor samples from healthy controls.")
(license license:artistic2.0)))
(define-public r-biocversion (define-public r-biocversion
(package (package
(name "r-biocversion") (name "r-biocversion")
@ -2746,6 +2940,25 @@ measures for Affymetrix Oligonucleotide Arrays.")
(properties (properties
`((upstream-name . "AffyCompatible"))) `((upstream-name . "AffyCompatible")))
(build-system r-build-system) (build-system r-build-system)
(arguments
(list
#:phases
`(modify-phases %standard-phases
(add-after 'unpack 'make-reproducible
(lambda _
;; Order DTD elements before generating R code from them.
(substitute* "R/methods-AffyCompatible.R"
(("dtd <- .*" m)
(string-append m "
elements <- dtd$elements
ordered <- elements[order(names(elements))]\n"))
(("elt in dtd\\$elements")
"elt in ordered"))
;; Use a predictable directory name for code generation.
(mkdir-p "/tmp/NetAffxResourcePrototype")
(substitute* "R/DataClasses.R"
(("directory=tempdir\\(\\)")
"directory=\"/tmp/NetAffxResourcePrototype\"")))))))
(propagated-inputs (propagated-inputs
(list r-biostrings r-rcurl r-xml)) (list r-biostrings r-rcurl r-xml))
(home-page "https://bioconductor.org/packages/AffyCompatible/") (home-page "https://bioconductor.org/packages/AffyCompatible/")
@ -3660,6 +3873,50 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2):
1-15.") 1-15.")
(license license:lgpl3))) (license license:lgpl3)))
(define-public r-dittoseq
(package
(name "r-dittoseq")
(version "1.8.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "dittoSeq" version))
(sha256
(base32
"0vi0hcyffaxp6yxsrq95bdlrhr85dvbqm9c7rg6a6blkfgwhlzb4"))))
(properties `((upstream-name . "dittoSeq")))
(build-system r-build-system)
(propagated-inputs
(list r-colorspace
r-cowplot
r-ggplot2
r-ggrepel
r-ggridges
r-gridextra
r-pheatmap
r-reshape2
r-s4vectors
r-singlecellexperiment
r-summarizedexperiment))
(native-inputs (list r-knitr))
(home-page "https://bioconductor.org/packages/dittoSeq")
(synopsis "Single-cell and bulk RNA sequencing visualization")
(description
"This package provides a universal, user friendly, single-cell and bulk RNA
sequencing visualization toolkit that allows highly customizable creation of
color blindness friendly, publication-quality figures. dittoSeq accepts both
SingleCellExperiment (SCE) and Seurat objects, as well as the import and
usage, via conversion to an SCE, of SummarizedExperiment or DGEList bulk data.
Visualizations include dimensionality reduction plots, heatmaps, scatterplots,
percent composition or expression across groups, and more. Customizations
range from size and title adjustments to automatic generation of annotations
for heatmaps, overlay of trajectory analysis onto any dimensionality reduciton
plot, hidden data overlay upon cursor hovering via ggplotly conversion, and
many more. All with simple, discrete inputs. Color blindness friendliness is
powered by legend adjustments (enlarged keys), and by allowing the use of
shapes or letter-overlay in addition to the carefully selected
code{dittoColors()}.")
(license license:expat)))
(define-public r-edaseq (define-public r-edaseq
(package (package
(name "r-edaseq") (name "r-edaseq")
@ -3728,14 +3985,14 @@ CAGE.")
(define-public r-ensembldb (define-public r-ensembldb
(package (package
(name "r-ensembldb") (name "r-ensembldb")
(version "2.20.1") (version "2.20.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ensembldb" version)) (uri (bioconductor-uri "ensembldb" version))
(sha256 (sha256
(base32 (base32
"183rs74ngfvn9xz36csch495pqaash90yhhikm73m7b2bc37ziwz")))) "12n21dcimdhgyjzk33m6xbv0m9ihgyzcf66vr1jr5ycv3rq2s7xc"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-annotationdbi (list r-annotationdbi
@ -4282,13 +4539,13 @@ Binomial data via estimation of latent structure in the natural parameter.")
(define-public r-limma (define-public r-limma
(package (package
(name "r-limma") (name "r-limma")
(version "3.52.1") (version "3.52.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "limma" version)) (uri (bioconductor-uri "limma" version))
(sha256 (sha256
(base32 (base32
"193l3z2jv0kr91nl4r64p3jzb2rai9k8akx1zw7303nsnwpiiaay")))) "0m8p8pqmf48f2zdf3qs66hmychbc58g2hfg1wyxzsv180m6xkk65"))))
(build-system r-build-system) (build-system r-build-system)
(home-page "http://bioinf.wehi.edu.au/limma") (home-page "http://bioinf.wehi.edu.au/limma")
(synopsis "Package for linear models for microarray and RNA-seq data") (synopsis "Package for linear models for microarray and RNA-seq data")
@ -4605,14 +4862,14 @@ previously been used in XCMS.")
(define-public r-organismdbi (define-public r-organismdbi
(package (package
(name "r-organismdbi") (name "r-organismdbi")
(version "1.38.0") (version "1.38.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "OrganismDbi" version)) (uri (bioconductor-uri "OrganismDbi" version))
(sha256 (sha256
(base32 (base32
"1xklaiyd4mv9sf9211flq1s68fhdn53y2i4l1k2ib39a4l6y9cyr")))) "0mxnxj8x4hc21psz39mf7qwvh1fsn6qyjgl5qffk1xxmasf69619"))))
(properties `((upstream-name . "OrganismDbi"))) (properties `((upstream-name . "OrganismDbi")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -4976,14 +5233,14 @@ tab-delimited (tabix) files.")
(define-public r-restfulr (define-public r-restfulr
(package (package
(name "r-restfulr") (name "r-restfulr")
(version "0.0.14") (version "0.0.15")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "restfulr" version)) (uri (cran-uri "restfulr" version))
(sha256 (sha256
(base32 (base32
"1sdlz8zl4xvd7cpn1gm86q7jv9v7561gg4wk6y7zybiw37pxghq6")))) "14p6h0gjknqy5z2fprxw7waf4p0cd2qmp18s7qig4ylqn8gqzzs0"))))
(properties `((upstream-name . "restfulr"))) (properties `((upstream-name . "restfulr")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -4997,13 +5254,13 @@ tab-delimited (tabix) files.")
(define-public r-rtracklayer (define-public r-rtracklayer
(package (package
(name "r-rtracklayer") (name "r-rtracklayer")
(version "1.56.0") (version "1.56.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "rtracklayer" version)) (uri (bioconductor-uri "rtracklayer" version))
(sha256 (sha256
(base32 (base32
"1d9sak1xrrkcvj0q3vnp6w2k0nx2k2ajhsbq0dyb4nhcghp5w8fd")))) "10qy9s6253mgj871qfqn03i8yw10mz7id4cxfyf67qxczz2xmjls"))))
(build-system r-build-system) (build-system r-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -5289,14 +5546,14 @@ ungapped alignment formats.")
(define-public r-simplifyenrichment (define-public r-simplifyenrichment
(package (package
(name "r-simplifyenrichment") (name "r-simplifyenrichment")
(version "1.6.0") (version "1.6.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "simplifyEnrichment" version)) (uri (bioconductor-uri "simplifyEnrichment" version))
(sha256 (sha256
(base32 (base32
"1g3kfa17p60jkk4l34vc5hdq83w082qsxbjvpqw7r9rdd8d79z2q")))) "0qblgdxmr7zc981529cca3ykakql618q1im6gaxw8pwws5jgpyk6"))))
(properties (properties
`((upstream-name . "simplifyEnrichment"))) `((upstream-name . "simplifyEnrichment")))
(build-system r-build-system) (build-system r-build-system)
@ -5953,13 +6210,13 @@ libraries for systems that do not have these available via other means.")
(define-public r-zellkonverter (define-public r-zellkonverter
(package (package
(name "r-zellkonverter") (name "r-zellkonverter")
(version "1.6.2") (version "1.6.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "zellkonverter" version)) (uri (bioconductor-uri "zellkonverter" version))
(sha256 (sha256
(base32 "0s1n3impm4k55pac8mr18czylsc30yqcvdfdki4sawk74b2rkx8c")))) (base32 "0l6v7a2zyxpq2w3vm85z439ldi3ld3pkc3wx95a1vxzbr31cpdzz"))))
(properties `((upstream-name . "zellkonverter"))) (properties `((upstream-name . "zellkonverter")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -6481,13 +6738,13 @@ enrichedGO (addGeneIDs).")
(define-public r-matrixgenerics (define-public r-matrixgenerics
(package (package
(name "r-matrixgenerics") (name "r-matrixgenerics")
(version "1.8.0") (version "1.8.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "MatrixGenerics" version)) (uri (bioconductor-uri "MatrixGenerics" version))
(sha256 (sha256
(base32 (base32
"0s7s39v9lqniirjgp8lbmffw0c8rsp6bndgzy1zlyh5vivfih0f5")))) "1liblnpziyyjxzrhdd5d89ilvfqqhbl87h3hsmdm0kwnmc73r37f"))))
(properties (properties
`((upstream-name . "MatrixGenerics"))) `((upstream-name . "MatrixGenerics")))
(build-system r-build-system) (build-system r-build-system)
@ -7618,14 +7875,14 @@ multiplication and calculation of row/column sums or means.")
(define-public r-batchelor (define-public r-batchelor
(package (package
(name "r-batchelor") (name "r-batchelor")
(version "1.12.1") (version "1.12.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "batchelor" version)) (uri (bioconductor-uri "batchelor" version))
(sha256 (sha256
(base32 (base32
"1zyvjr9nwfh0cdqk4kwmr30yhh05picyab1hpnpn737xvn525jfi")))) "00ix3hvhgalxg63qnynv2waa273jk336lg47k72qwxfzimsxfjxc"))))
(properties `((upstream-name . "batchelor"))) (properties `((upstream-name . "batchelor")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -8368,17 +8625,22 @@ are standardized and usable by the accompanying mutossGUI package.")
(define-public r-metap (define-public r-metap
(package (package
(name "r-metap") (name "r-metap")
(version "1.3") (version "1.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "metap" version)) (uri (cran-uri "metap" version))
(sha256 (sha256
(base32 (base32
"1jmmmmjiklaxfl604hwqil193ydaghvd5jv8xsr4bx3pzn5i9kvz")))) "0asmypxfxly4xmcjf3yzid5zqlzg88z0brij2splfk4avsl035gf"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-lattice r-mutoss r-rdpack r-tfisher)) (list r-lattice
r-mathjaxr
r-mutoss
r-qqconf
r-rdpack
r-tfisher))
(home-page "http://www.dewey.myzen.co.uk/meta/meta.html") (home-page "http://www.dewey.myzen.co.uk/meta/meta.html")
(synopsis "Meta-analysis of significance values") (synopsis "Meta-analysis of significance values")
(description (description
@ -8743,14 +9005,14 @@ All the visualization methods are developed based on ggplot2 graphics.")
(define-public r-clusterprofiler (define-public r-clusterprofiler
(package (package
(name "r-clusterprofiler") (name "r-clusterprofiler")
(version "4.4.2") (version "4.4.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "clusterProfiler" version)) (uri (bioconductor-uri "clusterProfiler" version))
(sha256 (sha256
(base32 (base32
"07fbc3d06990qy1qcaqqgm5ma2l0h08bwfkqrnlfd9f2xcppdywd")))) "0k5jhry0j6wa7779n3hrw4ld4bvyahpgpbwi2a0g704m3dd3mqp5"))))
(properties (properties
`((upstream-name . "clusterProfiler"))) `((upstream-name . "clusterProfiler")))
(build-system r-build-system) (build-system r-build-system)
@ -9290,14 +9552,14 @@ type and symbol colors.")
(define-public r-genomicscores (define-public r-genomicscores
(package (package
(name "r-genomicscores") (name "r-genomicscores")
(version "2.8.0") (version "2.8.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "GenomicScores" version)) (uri (bioconductor-uri "GenomicScores" version))
(sha256 (sha256
(base32 (base32
"0zq9k4189dlc14f9rknsc1ffhpjzb2f4fzdaszfdbnd4rr43b79i")))) "12rcxw69an1d5q7ar58xy8s871l47imw2nm08j054ivxslx8597j"))))
(properties `((upstream-name . "GenomicScores"))) (properties `((upstream-name . "GenomicScores")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -9311,6 +9573,7 @@ type and symbol colors.")
r-genomeinfodb r-genomeinfodb
r-genomicranges r-genomicranges
r-hdf5array r-hdf5array
r-httr
r-iranges r-iranges
r-rhdf5 r-rhdf5
r-s4vectors r-s4vectors
@ -10705,17 +10968,20 @@ packages.")
(define-public r-ropls (define-public r-ropls
(package (package
(name "r-ropls") (name "r-ropls")
(version "1.28.0") (version "1.28.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ropls" version)) (uri (bioconductor-uri "ropls" version))
(sha256 (sha256
(base32 (base32
"1i9g32mjknrd2lbz2nisc7nr0gk9byx9aik1i7xdwmq4ndxf8rf7")))) "07gpx15r8c3wljiwxnff2zp7wxbhzz9r7njk8zg8hpy2q5qm3i6c"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-biobase r-multidataset)) (list r-biobase
r-multiassayexperiment
r-multidataset
r-summarizedexperiment))
(native-inputs (native-inputs
(list r-knitr)) ; for vignettes (list r-knitr)) ; for vignettes
(home-page "https://dx.doi.org/10.1021/acs.jproteome.5b00354") (home-page "https://dx.doi.org/10.1021/acs.jproteome.5b00354")
@ -10742,17 +11008,23 @@ coefficients).")
(define-public r-biosigner (define-public r-biosigner
(package (package
(name "r-biosigner") (name "r-biosigner")
(version "1.24.0") (version "1.24.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "biosigner" version)) (uri (bioconductor-uri "biosigner" version))
(sha256 (sha256
(base32 (base32
"11w28nlz0f06idbna5k9xs891w516401l1zab5gg7s0z3xxaki4f")))) "0vdv2by3qv7y8vzr8qgg7apwwgsa0fhlfrhzns7g3nas7883c89m"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-biobase r-e1071 r-multidataset r-randomforest r-ropls)) (list r-biobase
r-e1071
r-multiassayexperiment
r-multidataset
r-randomforest
r-ropls
r-summarizedexperiment))
(native-inputs (native-inputs
(list r-knitr)) (list r-knitr))
(home-page "https://bioconductor.org/packages/biosigner/") (home-page "https://bioconductor.org/packages/biosigner/")
@ -10812,14 +11084,14 @@ annotations.")
(define-public r-rsubread (define-public r-rsubread
(package (package
(name "r-rsubread") (name "r-rsubread")
(version "2.10.2") (version "2.10.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "Rsubread" version)) (uri (bioconductor-uri "Rsubread" version))
(sha256 (sha256
(base32 (base32
"1pvyx8nxv10s816hgxrnw60hp9rlqjdgjq3ajpzqxgxmmlhnk0v0")))) "155h25gbagqns7wpriil17li0jkdd1z1pcz0dlnikdqj4saf97rl"))))
(properties `((upstream-name . "Rsubread"))) (properties `((upstream-name . "Rsubread")))
(build-system r-build-system) (build-system r-build-system)
(inputs (list zlib)) (inputs (list zlib))
@ -14679,14 +14951,14 @@ by Ernst and Kellis.")
(define-public r-ggbio (define-public r-ggbio
(package (package
(name "r-ggbio") (name "r-ggbio")
(version "1.44.0") (version "1.44.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ggbio" version)) (uri (bioconductor-uri "ggbio" version))
(sha256 (sha256
(base32 (base32
"1lvms07ba99nzf10gpn50wjca84nj5jrb6902z069p2bfi4xyd27")))) "0iyhjalwq1jmldpn20iv8l2kmz6sm20ddry2yz2zn7yq0wszp3vg"))))
(build-system r-build-system) (build-system r-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -15363,14 +15635,14 @@ all RNA-Seq libraries of each species integrated in Bgee.")
(define-public r-bgeedb (define-public r-bgeedb
(package (package
(name "r-bgeedb") (name "r-bgeedb")
(version "2.22.0") (version "2.22.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "BgeeDB" version)) (uri (bioconductor-uri "BgeeDB" version))
(sha256 (sha256
(base32 (base32
"093zk43x8i9ajaqsdhndkyal3dizllr3g85ziavb3k73dzvarzsc")))) "1f6lrazaibbz21sqvj59rq6ps9m1riw2y0kyidbn29mxf4ibwh3k"))))
(properties `((upstream-name . "BgeeDB"))) (properties `((upstream-name . "BgeeDB")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -15832,14 +16104,14 @@ scoring subnetwork.")
(define-public r-bionetstat (define-public r-bionetstat
(package (package
(name "r-bionetstat") (name "r-bionetstat")
(version "1.16.0") (version "1.16.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "BioNetStat" version)) (uri (bioconductor-uri "BioNetStat" version))
(sha256 (sha256
(base32 (base32
"0f387j35lj32ryiw48jz8gc08al2lmmv9zvbbgyjq9wmqlca3dfb")))) "0zs6pymvxb95sji0rnnzaz3whj7hsvj2kl4n4gzj7w1q0prbfpb2"))))
(properties `((upstream-name . "BioNetStat"))) (properties `((upstream-name . "BioNetStat")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -16169,13 +16441,13 @@ estimates, etc.")
(define-public r-tcgabiolinks (define-public r-tcgabiolinks
(package (package
(name "r-tcgabiolinks") (name "r-tcgabiolinks")
(version "2.24.1") (version "2.24.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "TCGAbiolinks" version)) (uri (bioconductor-uri "TCGAbiolinks" version))
(sha256 (sha256
(base32 "0kw4lrg8xm0ipj7f7h1rwfj7a8mknkril1pn05x08mx13f7p5p14")))) (base32 "0visvfhzaf0p1rb5vjkmw1c91zfxpks8nl9nbl9xlnpm8lkmmkms"))))
(properties `((upstream-name . "TCGAbiolinks"))) (properties `((upstream-name . "TCGAbiolinks")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs

View file

@ -806,6 +806,44 @@ input/output delimiter. When the new functionality is not used, bioawk is
intended to behave exactly the same as the original BWK awk.") intended to behave exactly the same as the original BWK awk.")
(license license:x11))) (license license:x11)))
(define-public python-cellbender
(package
(name "python-cellbender")
(version "0.2.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/broadinstitute/CellBender")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1zav2q8nnss80i25y06fccagkvrqsy7lpylsl4dxv4qkj8p4fnv3"))))
(build-system python-build-system)
(arguments
(list #:tests? #false)) ;there are none
(propagated-inputs
(list python-anndata
python-matplotlib
python-numpy
python-pandas
python-pyro-ppl
python-scikit-learn
python-scipy
python-sphinx
python-sphinx-argparse
python-sphinx-autodoc-typehints
python-sphinx-rtd-theme
python-sphinxcontrib-programoutput
python-tables))
(home-page "https://cellbender.rtfd.io/")
(synopsis "Eliminate technical artifacts from single-cell RNA-seq data")
(description
"CellBender is a software package for eliminating technical artifacts
from high-throughput single-cell RNA sequencing (scRNA-seq) data.")
(license license:bsd-3)))
(define-public python-htsget (define-public python-htsget
(package (package
(name "python-htsget") (name "python-htsget")
@ -7167,6 +7205,64 @@ sequence.")
auROC analysis.") auROC analysis.")
(license license:gpl3)))) (license license:gpl3))))
(define-public r-sccustomize
(let ((commit "8414d1f5fb32277855b0619191a568932b7baeb0")
(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"))))
(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))
(native-inputs (list r-knitr))
(home-page "https://github.com/samuel-marsh/scCustomize")
(synopsis "Custom visualization and analyses of single-cell sequencing")
(description
"This is a collection of functions created and/or curated to aid in the
visualization and analysis of single-cell data using R.")
(license license:gpl3+))))
(define-public r-snapatac (define-public r-snapatac
(package (package
(name "r-snapatac") (name "r-snapatac")
@ -13520,6 +13616,53 @@ transcription factors, gene regulatory networks and cell types from
single-cell RNA-seq data.") single-cell RNA-seq data.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public python-ikarus
(package
(name "python-ikarus")
(version "0.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ikarus" version))
(sha256
(base32
"086czpvj4yafz4vrq5rx2gy0bj2l8nzwnkk0gw8qvy4w133xjysy"))))
(build-system python-build-system)
(arguments
`(#:tests? #false
#:phases
(modify-phases %standard-phases
;; See https://github.com/BIMSBbioinfo/ikarus/issues/12
(add-after 'unpack 'fix-issue-12
(lambda _
(substitute* "ikarus/classifier.py"
(("pyscenic.genesig") "ctxcore.genesig"))))
;; 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-numpy
python-pandas
python-scipy
python-scanpy
python-anndata
python-ctxcore ;because of issue 12
pyscenic))
(home-page "https://github.com/BIMSBbioinfo/ikarus")
(synopsis "Machine learning classifier of tumor cells")
(description
"ikarus is a stepwise machine learning pipeline that tries to cope with a task
of distinguishing tumor cells from normal cells. Leveraging multiple
annotated single cell datasets it can be used to define a gene set specific to
tumor cells. First, the latter gene set is used to rank cells and then to
train a logistic classifier for the robust classification of tumor and normal
cells. Finally, sensitivity is increased by propagating the cell labels based
on a custom cell-cell network. ikarus is tested on multiple single cell
datasets to ascertain that it achieves high sensitivity and specificity in
multiple experimental contexts.")
(license license:expat)))
(define-public vbz-compression (define-public vbz-compression
(package (package
(name "vbz-compression") (name "vbz-compression")
@ -14459,7 +14602,7 @@ The output is in SAM format.")
(propagated-inputs (propagated-inputs
(list libxml2)) (list libxml2))
(native-inputs (native-inputs
(list check-0.14 swig)) (list check swig))
(home-page "http://sbml.org/Software/libSBML") (home-page "http://sbml.org/Software/libSBML")
(synopsis "Process SBML files and data streams") (synopsis "Process SBML files and data streams")
(description "LibSBML is a library to help you read, write, manipulate, (description "LibSBML is a library to help you read, write, manipulate,
@ -15734,6 +15877,35 @@ workflows from concise descriptions in ccwl. It is implemented as an
language.") language.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public hh-suite
(package
(name "hh-suite")
(version "3.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/soedinglab/hh-suite")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1bcmzg0ii6nkda2xm5jdddbwkgsag7k38j20af0c9chr2mbxwx4d"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "lib/simde"))))
(build-system cmake-build-system)
(arguments '(#:tests? #false)) ;no test target
(inputs
(list openmpi simde))
(native-inputs
(list perl pkg-config xxd))
(home-page "https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3019-7")
(synopsis "Remote protein homology detection suite")
(description "The HH-suite is a software package for sensitive protein sequence searching
based on the pairwise alignment of hidden Markov models (HMMs).")
(license license:gpl3+)))
(define-public wfmash (define-public wfmash
(package (package
(name "wfmash") (name "wfmash")

View file

@ -14,6 +14,8 @@
;;; Copyright © 2021 David Dashyan <mail@davie.li> ;;; Copyright © 2021 David Dashyan <mail@davie.li>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com> ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 (unmatched parenthesis <paren@disroot.org> ;;; Copyright © 2022 (unmatched parenthesis <paren@disroot.org>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -48,6 +50,7 @@
#:use-module (gnu packages bison) #:use-module (gnu packages bison)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages gcc)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
@ -63,59 +66,111 @@
#:use-module (gnu packages web) #:use-module (gnu packages web)
#:use-module (gnu packages xml)) #:use-module (gnu packages xml))
(define-public cproc
(let ((commit "70fe9ef1810cc6c05bde9eb0970363c35fa7e802")
(revision "1"))
(package
(name "cproc")
(version (git-version "0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~mcf/cproc")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1qmgzll7z7mn587azkj4cizyyd8ii6iznfxpc66ja08140sbn9yx"))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs #:allow-other-keys)
(let ((gcc-lib (assoc-ref inputs "gcc:lib"))
(host-system #$(nix-system->gnu-triplet
(%current-system)))
(target-system #$(nix-system->gnu-triplet
(or (%current-target-system)
(%current-system)))))
(invoke "./configure"
(string-append "--prefix=" #$output)
(string-append "--host=" host-system)
(string-append "--target=" target-system)
(string-append "--with-ld=" #$(ld-for-target))
(string-append "--with-gcc-libdir=" gcc-lib))))))))
(inputs `(("qbe" ,qbe)
("gcc:lib" ,gcc "lib")))
(supported-systems (list "x86_64-linux" "aarch64-linux"))
(synopsis "Simple C11 compiler backed by QBE")
(description "@code{cproc} is a C compiler using QBE as a backend,
supporting most of C11 along with some GCC and C2x extensions.")
(home-page "https://sr.ht/~mcf/cproc")
(license license:expat))))
(define-public tcc (define-public tcc
(package ;; There's currently no release fixing <https://issues.guix.gnu.org/52140>.
(name "tcc") ;aka. "tinycc" (let ((revision "1")
(version "0.9.27") (commit "a83b28568596afd8792fd58d1a5bd157fc6b6634"))
(source (origin (package
(method url-fetch) (name "tcc") ;aka. "tinycc"
(uri (string-append "mirror://savannah/tinycc/tcc-" (version (git-version "0.9.27" revision commit))
version ".tar.bz2")) (source (origin
(sha256 (method git-fetch)
(base32 (uri (git-reference
"177bdhwzrnqgyrdv1dwvpd04fcxj68s5pm1dzwny6359ziway8yy")))) (url "git://repo.or.cz/tinycc.git")
(build-system gnu-build-system) (commit commit)))
(native-inputs (list perl texinfo)) (file-name (git-file-name name version))
(arguments (sha256
`(#:configure-flags (list (string-append "--elfinterp=" (base32
(assoc-ref %build-inputs "libc") "01znw86fg73x3k0clafica4b6glbhz69p588kvp766i0zgvs68dh"))))
,(glibc-dynamic-linker)) (build-system gnu-build-system)
(string-append "--crtprefix=" (native-inputs (list perl texinfo))
(assoc-ref %build-inputs "libc") (arguments
"/lib") `(#:configure-flags (list (string-append "--elfinterp="
(string-append "--sysincludepaths=" (assoc-ref %build-inputs
(assoc-ref %build-inputs "libc") "libc")
"/include:" ,(glibc-dynamic-linker))
(assoc-ref %build-inputs (string-append "--crtprefix="
"kernel-headers") (assoc-ref %build-inputs
"/include:{B}/include") "libc") "/lib")
(string-append "--libpaths=" (string-append "--sysincludepaths="
(assoc-ref %build-inputs "libc") (assoc-ref %build-inputs
"/lib") "libc") "/include:"
,@(if (string-prefix? "armhf-linux" (assoc-ref %build-inputs
(or (%current-target-system) "kernel-headers")
(%current-system))) "/include:{B}/include")
`("--triplet=arm-linux-gnueabihf") (string-append "--libpaths="
'())) (assoc-ref %build-inputs
#:test-target "test")) "libc") "/lib")
(native-search-paths ,@(if (string-prefix? "armhf-linux"
(list (search-path-specification (or (%current-target-system)
(variable "CPATH") (%current-system)))
(files '("include"))) `("--triplet=arm-linux-gnueabihf")
(search-path-specification '()))
(variable "LIBRARY_PATH") #:test-target "test"))
(files '("lib" "lib64"))))) (native-search-paths
;; Fails to build on MIPS: "Unsupported CPU" (list (search-path-specification
(supported-systems (delete "mips64el-linux" %supported-systems)) (variable "CPATH")
(synopsis "Tiny and fast C compiler") (files '("include")))
(description (search-path-specification
"TCC, also referred to as \"TinyCC\", is a small and fast C compiler (variable "LIBRARY_PATH")
(files '("lib" "lib64")))))
;; Fails to build on MIPS: "Unsupported CPU"
(supported-systems (delete "mips64el-linux" %supported-systems))
(synopsis "Tiny and fast C compiler")
(description
"TCC, also referred to as \"TinyCC\", is a small and fast C compiler
written in C. It supports ANSI C with GNU and extensions and most of the C99 written in C. It supports ANSI C with GNU and extensions and most of the C99
standard.") standard.")
(home-page "http://www.tinycc.org/") (home-page "http://www.tinycc.org/")
;; An attempt to re-licence tcc under the Expat licence is underway but not ;; An attempt to re-licence tcc under the Expat licence is underway but not
;; (if ever) complete. See the RELICENSING file for more information. ;; (if ever) complete. See the RELICENSING file for more information.
(license license:lgpl2.1+))) (license license:lgpl2.1+))))
(define-public pcc (define-public pcc
(package (package
@ -305,6 +360,11 @@ Its three main components are:
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list autoconf automake libtool pkg-config check)) (list autoconf automake libtool pkg-config check))
(native-search-paths
(list
(search-path-specification
(variable "C_INCLUDE_PATH")
(files '("include")))))
(synopsis "Thin wrapper over POSIX syscalls") (synopsis "Thin wrapper over POSIX syscalls")
(description (description
"The purpose of libfixposix is to offer replacements for parts of POSIX "The purpose of libfixposix is to offer replacements for parts of POSIX
@ -1128,3 +1188,41 @@ performance concurrent systems developed in C99+.")
C and C++. The functions it provides are like those from the C header C and C++. The functions it provides are like those from the C header
string.h, but with a utf8* prefix instead of the str* prefix.") string.h, but with a utf8* prefix instead of the str* prefix.")
(license license:unlicense)))) (license license:unlicense))))
(define-public utest-h
;; The latest commit is used as there is no release.
(let ((commit "54458e248f875f1a51f0af8bec8ca6ae7761b9d1")
(revision "0"))
(package
(name "utest-h")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sheredom/utest.h")
(commit commit)))
(file-name (git-file-name "utest.h" version))
(sha256
(base32
"1ikl5jwmjdw1mblqyl2kvnqwkjgaz78c1h7mjcfmzjc0d3h8kh44"))))
(build-system cmake-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'build)
(delete 'configure)
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(with-directory-excursion "test"
(invoke "cmake" ".")
(invoke "make")))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(install-file "utest.h"
(string-append out "/include"))))))))
(home-page "https://www.duskborn.com/utest_h/")
(synopsis "Single-header unit testing framework for C and C++")
(description
"This package provides a header-only unit testing library for C/C++.")
(license license:unlicense))))

View file

@ -2,7 +2,7 @@
;;; Copyright © 2015 David Thompson <davet@gnu.org> ;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2017, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com> ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2016, 2021 Stefan Reichoer <stefan@xsteve.at> ;;; Copyright © 2016, 2021 Stefan Reichoer <stefan@xsteve.at>
;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
@ -119,7 +119,7 @@ the <tz.h> library for handling time zones and leap seconds.")
(define-public libical (define-public libical
(package (package
(name "libical") (name "libical")
(version "3.0.10") (version "3.0.14")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -127,7 +127,7 @@ the <tz.h> library for handling time zones and leap seconds.")
version "/libical-" version ".tar.gz")) version "/libical-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1d1nqcfilb4k8bc5x85fhnd26l1ski58wpk2nmds6mlxrzkb6czr")))) "13ycghsi4iv8mnm0xv97bs0x6qvfhdxkw20n3yhcc7bg6n0bg122"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:tests? #f ; test suite appears broken '(#:tests? #f ; test suite appears broken
@ -143,8 +143,7 @@ the <tz.h> library for handling time zones and leap seconds.")
(substitute* "doc/reference/libical-glib/libical-glib-docs.sgml.in" (substitute* "doc/reference/libical-glib/libical-glib-docs.sgml.in"
(("http://www.oasis-open.org/docbook/xml/4.3/") (("http://www.oasis-open.org/docbook/xml/4.3/")
(string-append (assoc-ref inputs "docbook-xml") (string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/"))) "/xml/dtd/docbook/")))))
#t))
(add-before 'configure 'patch-paths (add-before 'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; TODO: libical 3.1.0 supports using TZDIR instead of a hard-coded ;; TODO: libical 3.1.0 supports using TZDIR instead of a hard-coded
@ -156,8 +155,7 @@ the <tz.h> library for handling time zones and leap seconds.")
(string-append "\"" tzdata "/share/zoneinfo\"")) (string-append "\"" tzdata "/share/zoneinfo\""))
(("\\\"/usr/lib/zoneinfo\\\",") "") (("\\\"/usr/lib/zoneinfo\\\",") "")
(("\\\"/etc/zoneinfo\\\",") "") (("\\\"/etc/zoneinfo\\\",") "")
(("\\\"/usr/share/lib/zoneinfo\\\"") ""))) (("\\\"/usr/share/lib/zoneinfo\\\"") ""))))))))
#t)))))
(native-inputs (native-inputs
(list docbook-xml-4.3 (list docbook-xml-4.3
gobject-introspection gobject-introspection
@ -181,13 +179,13 @@ data units.")
(define-public khal (define-public khal
(package (package
(name "khal") (name "khal")
(version "0.10.4") (version "0.10.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "khal" version)) (uri (pypi-uri "khal" version))
(sha256 (sha256
(base32 (base32
"17qj1n2l39pnzk4vjrmql90z7908nivnzcc2g9nj1h31k859inrz")))) "0xhcrx7lcjk126i2xgqmgb199vd4hxsq34mkdmhdh9ia62nbgvsf"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:tests? #f ; The test suite is unreliable. See <https://bugs.gnu.org/44197> `(#:tests? #f ; The test suite is unreliable. See <https://bugs.gnu.org/44197>
@ -200,8 +198,7 @@ data units.")
(invoke "make" "--directory=doc/" "man") (invoke "make" "--directory=doc/" "man")
(install-file (install-file
"doc/build/man/khal.1" "doc/build/man/khal.1"
(string-append (assoc-ref outputs "out") "/share/man/man1")) (string-append (assoc-ref outputs "out") "/share/man/man1")))))))
#t)))))
(native-inputs (native-inputs
(list python-setuptools-scm (list python-setuptools-scm
;; Required to build manpage ;; Required to build manpage

View file

@ -131,7 +131,7 @@ that was originally contributed to Debian.")
;; XXX We used to refer to the nss package here, but that eventually caused ;; XXX We used to refer to the nss package here, but that eventually caused
;; module cycles. The below is a quick copy-paste job that must be kept in ;; module cycles. The below is a quick copy-paste job that must be kept in
;; sync manually. Surely there's a better way…? ;; sync manually. Surely there's a better way…?
(version "3.71") (version "3.80")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (let ((version-with-underscores (uri (let ((version-with-underscores
@ -142,7 +142,7 @@ that was originally contributed to Debian.")
"nss-" version ".tar.gz"))) "nss-" version ".tar.gz")))
(sha256 (sha256
(base32 (base32
"0ly2l3dv6z5hlxs72h5x6796ni3x1bq60saavaf42ddgv4ax7b4r")) "0sjbg248kfabv9av2jwkr28fqgj4zjm2nqh9nc16p6p2qz91zgy0"))
;; Create nss.pc and nss-config. ;; Create nss.pc and nss-config.
(patches (search-patches "nss-3.56-pkgconfig.patch" (patches (search-patches "nss-3.56-pkgconfig.patch"
"nss-getcwd-nonnull.patch" "nss-getcwd-nonnull.patch"

View file

@ -109,6 +109,26 @@ useful list processing procedures for construction, examining, destructuring
and manipulating lists and pairs.") and manipulating lists and pairs.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public chicken-srfi-13
(package
(name "chicken-srfi-13")
(version "0.3.2")
(source (origin
(method url-fetch)
(uri (egg-uri "srfi-13" version))
(sha256
(base32
"18clbmaampaxivwx9bya9fxnkzqbczhlz0kbs9bfapm77mxkwclc"))))
(build-system chicken-build-system)
(arguments '(#:egg-name "srfi-13"))
(native-inputs (list chicken-test))
(propagated-inputs (list chicken-srfi-14))
(home-page "https://wiki.call-cc.org/egg/srfi-13")
(synopsis "SRFI-13 string library for Chicken scheme")
(description "This package provides the SRFI-13 string library for Chicken
scheme.")
(license license:bsd-3)))
(define-public chicken-srfi-14 (define-public chicken-srfi-14
(package (package
(name "chicken-srfi-14") (name "chicken-srfi-14")
@ -278,3 +298,34 @@ with integers.")
"This package provides a simple testing utility for CHICKEN Scheme.") "This package provides a simple testing utility for CHICKEN Scheme.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public chicken-crypto-tools
(package
(name "chicken-crypto-tools")
(version "1.4")
(source (origin
(method url-fetch)
(uri (egg-uri "crypto-tools" version))
(sha256
(base32
"0ajf0qfnhp99f4x1dll2fhlxrsxamgrrwyksc7rrym77xmv8f1pd"))))
(build-system chicken-build-system)
(arguments '(#:egg-name "crypto-tools"))
(home-page "https://wiki.call-cc.org/egg/crypto-tools")
(synopsis "Useful cryptographic primitives")
(description "The crypto-tools egg implements useful cryptographic
primitives. More specifically, provided are:
@itemize
@item binary blobs
@itemize
@item marshallers to and from hex strings
@item blob xor
@item blob padding using either PKCS#5 or ISO7816-4
@end itemize
@item Block cipher modes of operation
@itemize
@item CBC with or without incorporated encrypted IV in the ciphertext
@item CTR with or without incorporated IV in the ciphertext
@end itemize
@end itemize")
(license license:bsd-3)))

View file

@ -316,7 +316,7 @@
;; run the Blink performance tests, just remove everything to save ~70MiB. ;; run the Blink performance tests, just remove everything to save ~70MiB.
'("third_party/blink/perf_tests")) '("third_party/blink/perf_tests"))
(define %chromium-version "103.0.5060.53") (define %chromium-version "103.0.5060.134")
(define %ungoogled-revision (string-append %chromium-version "-1")) (define %ungoogled-revision (string-append %chromium-version "-1"))
(define %debian-revision "debian/102.0.5005.61-1") (define %debian-revision "debian/102.0.5005.61-1")
@ -328,7 +328,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision)) (file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256 (sha256
(base32 (base32
"1g5ciwzrhg9g13gvhrwqf19djk9jhj1d6nx2f6a8d5ch1mhi2z8s")))) "00mpmyaa8bqxf1f4vhk1waxhjbhcwab8m1x1vf341al64f6bmr1r"))))
(define %debian-origin (define %debian-origin
(origin (origin
@ -477,7 +477,7 @@
%chromium-version ".tar.xz")) %chromium-version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"00di0nw6h3kb0qp2wp3ny3zsar1ayn1lyx5zr28dl1h5cwaaxjqf")) "0wdmy15602qxrb403p8yyx69k7py85fbawdsgap1l6z4h4j2g2p4"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet)))) (snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system) (build-system gnu-build-system)

View file

@ -170,6 +170,7 @@ designs.")
`(#:install-plan `(#:install-plan
'(("deps.edn" "lib/clojure/") '(("deps.edn" "lib/clojure/")
("example-deps.edn" "lib/clojure/") ("example-deps.edn" "lib/clojure/")
("tools.edn" "lib/clojure/")
("exec.jar" "lib/clojure/libexec/") ("exec.jar" "lib/clojure/libexec/")
("clojure" "bin/") ("clojure" "bin/")
("clj" "bin/")) ("clj" "bin/"))

View file

@ -390,7 +390,7 @@ features that are not supported by the standard @code{stdio} implementation.")
(define-public universal-ctags (define-public universal-ctags
(package (package
(name "universal-ctags") (name "universal-ctags")
(version "5.9.20220605.0") (version "5.9.20220626.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -400,7 +400,7 @@ features that are not supported by the standard @code{stdio} implementation.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0mri7m2qsw5pyq1ajapawvxn2cdrzg1vi4w2bdq0z4ws4q03lj7k")) "1x5kqqznlbndwln8g0kcxnla6b94i7x7cd63ba2sj0fzzms5gx24"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin

View file

@ -13,6 +13,7 @@
;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2022 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -722,7 +723,13 @@ MesCC-Tools), and finally M2-Planet.")
(inherit tcc-boot0) (inherit tcc-boot0)
(name "tcc-boot") (name "tcc-boot")
(version "0.9.27") (version "0.9.27")
(source (package-source tcc)) (source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/tinycc/tcc-"
version ".tar.bz2"))
(sha256
(base32
"177bdhwzrnqgyrdv1dwvpd04fcxj68s5pm1dzwny6359ziway8yy"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs '()) (inputs '())
(propagated-inputs '()) (propagated-inputs '())

View file

@ -1895,14 +1895,14 @@ timestamps in the file header with a fixed time (1 January 2008).
(define-public libzip (define-public libzip
(package (package
(name "libzip") (name "libzip")
(version "1.8.0") (version "1.9.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://libzip.org/download/libzip-" version ".tar.xz")) "https://libzip.org/download/libzip-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0zn9vaiwy2izj8cnm8i7c2mbdn38n328grqb8f07x55s4kd3nxph")))) "0dsrpb1faywhm0j8akx21gp7cn99wpz3h543jw8r7p5jnx99hgn9"))))
(native-inputs (native-inputs
(list perl pkg-config)) (list perl pkg-config))
(inputs (inputs
@ -2628,7 +2628,7 @@ to their original, binary CD format.")
(define-public libdeflate (define-public libdeflate
(package (package
(name "libdeflate") (name "libdeflate")
(version "1.10") (version "1.12")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -2637,19 +2637,19 @@ to their original, binary CD format.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0v5qh1cz787xj86l15x6brkkaw0jbxhqj5f85275q0l945qazvwm")))) "16n9232zjavcp5wp17cx0gh2v7gipxpncsha05j3ybajfs7g88jv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags (list #:make-flags
(list (string-append "CC=" ,(cc-for-target)) #~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out"))) (string-append "PREFIX=" #$output))
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'skip-static-library-installation (add-after 'unpack 'skip-static-library-installation
(lambda _ (lambda _
(substitute* "Makefile" (substitute* "Makefile"
(("install .*\\$\\(STATIC_LIB\\).*") "")))) (("install .*\\$\\(STATIC_LIB\\).*") ""))))
(delete 'configure)))) (delete 'configure)))) ; no configure script
(inputs (inputs
(list zlib)) (list zlib))
(home-page "https://github.com/ebiggers/libdeflate") (home-page "https://github.com/ebiggers/libdeflate")

View file

@ -24,6 +24,7 @@
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix gexp)
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (gnu packages) #:use-module (gnu packages)
@ -55,19 +56,30 @@
(base32 "12g5ilcnymx6i45z3359yds3cgd2dfqjyncfm92hqlymzps41yvr")))) (base32 "12g5ilcnymx6i45z3359yds3cgd2dfqjyncfm92hqlymzps41yvr"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags (list #:configure-flags
(list "--enable-nmcompat" #~(list "--enable-nmcompat"
"--enable-polkit" ; Polkit doesn't need to be present at build time. ;; PolKit doesn't need to be present at build time.
"--enable-iwd" "--enable-polkit"
"--enable-openconnect" "--enable-iwd"
"--enable-openvpn" "--enable-l2tp"
"--enable-vpnc" "--enable-openconnect"
"--enable-l2tp" "--enable-openvpn"
"--localstatedir=/var" "--enable-vpnc"
(string-append "--localstatedir=/var"
"--with-dbusconfdir=" (assoc-ref %outputs "out") "/etc") (string-append "--with-l2tp="
(string-append #$(this-package-input "xl2tpd")
"--with-dbusdatadir=" (assoc-ref %outputs "out") "/share")))) "/sbin/xl2tpd")
(string-append "--with-openconnect="
#$(this-package-input "openconnect")
"/sbin/openconnect")
(string-append "--with-openvpn="
#$(this-package-input "openvpn")
"/sbin/openvpn")
(string-append "--with-vpnc="
#$(this-package-input "vpnc")
"/sbin/vpnc")
(string-append "--with-dbusconfdir=" #$output "/etc")
(string-append "--with-dbusdatadir=" #$output "/share"))))
(native-inputs (native-inputs
(list pkg-config (list pkg-config
python-wrapper)) python-wrapper))

File diff suppressed because it is too large Load diff

View file

@ -30501,6 +30501,32 @@ kernel32.")
(description "This package provides a kqueue interface for BSDs.") (description "This package provides a kqueue interface for BSDs.")
(license license:expat))) (license license:expat)))
(define-public rust-kstring-2
(package
(name "rust-kstring")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "kstring" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0isp7kmk4q0qxpcd877q77ykgb3ryfbmj18djmnwv8c210sncc7c"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t ; Uses unstable features.
#:cargo-inputs
(("rust-document-features" ,rust-document-features-0.2)
("rust-serde" ,rust-serde-1)
("rust-static-assertions" ,rust-static-assertions-1))
#:cargo-development-inputs
(("rust-criterion" ,rust-criterion-0.3)
("rust-proptest" ,rust-proptest-1))))
(home-page "https://github.com/cobalt-org/kstring")
(synopsis "String optimized for map keys")
(description "Key String provides a Rust package optimized for map keys.")
(license (list license:expat license:asl2.0))))
(define-public rust-kstring-1 (define-public rust-kstring-1
(package (package
(name "rust-kstring") (name "rust-kstring")
@ -32249,6 +32275,31 @@ pseudo-random text.")
(license (list license:asl2.0 (license (list license:asl2.0
license:expat)))) license:expat))))
(define-public rust-libtest-mimic-0.3
(package
(name "rust-libtest-mimic")
(version "0.3.0")
(source (origin
(method url-fetch)
(uri (crate-uri "libtest-mimic" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1bp2jllwpciljr14g6s9bk4835g46kszgrjwi66vxxsk3ynbi9q8"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-crossbeam-channel" ,rust-crossbeam-channel-0.4)
("rust-rayon" ,rust-rayon-1)
("rust-structopt" ,rust-structopt-0.3)
("rust-termcolor" ,rust-termcolor-1))))
(home-page "https://github.com/LukasKalbertodt/libtest-mimic")
(synopsis "Tools for writing a test harness")
(description
"Write your own test harness that looks and behaves like the built-in test
harness used by @code{rustc --test}.")
(license (list license:expat license:asl2.0))))
(define-public rust-lmdb-rkv-0.14 (define-public rust-lmdb-rkv-0.14
(package (package
(name "rust-lmdb-rkv") (name "rust-lmdb-rkv")
@ -44455,6 +44506,31 @@ particularly useful for printing structured recursive data like trees.")
(("rust-termcolor" ,rust-termcolor-0.3) (("rust-termcolor" ,rust-termcolor-0.3)
("rust-typed-arena" ,rust-typed-arena-1)))))) ("rust-typed-arena" ,rust-typed-arena-1))))))
(define-public rust-pretty-assertions-1
(package
(name "rust-pretty-assertions")
(version "1.2.1")
(source (origin
(method url-fetch)
(uri (crate-uri "pretty_assertions" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0qrmkdwqn56af498vi8zjyq44wzcyvj5ic1dv54d01s2r6d9i7y8"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-ctor" ,rust-ctor-0.1)
("rust-diff" ,rust-diff-0.1)
("rust-output-vt100" ,rust-output-vt100-0.1))))
(home-page "https://github.com/colin-kiegel/rust-pretty-assertions")
(synopsis "Drop-in replacements for assert_eq! and assert_ne!")
(description
"Overwrite @code{assert_eq!} and @code{assert_ne!} with drop-in
replacements, adding colorful diffs.")
(license (list license:expat license:asl2.0))))
(define-public rust-pretty-assertions-0.7 (define-public rust-pretty-assertions-0.7
(package (package
(name "rust-pretty-assertions") (name "rust-pretty-assertions")
@ -56347,6 +56423,31 @@ CPUs, as well as raw interfaces to platform-specific instructions.
extensions.") extensions.")
(license (list license:expat license:asl2.0)))) (license (list license:expat license:asl2.0))))
(define-public rust-similar-2
(package
(name "rust-similar")
(version "2.1.0")
(source (origin
(method url-fetch)
(uri (crate-uri "similar" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1lw33na01r35h09s47jqhjgz3m29wapl20f6ybsla5d1cfgrf91f"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-bstr" ,rust-bstr-0.2)
("rust-serde" ,rust-serde-1)
("rust-unicode-segmentation" ,rust-unicode-segmentation-1))
#:cargo-development-inputs
(("rust-insta" ,rust-insta-1)
("rust-console" ,rust-console-0.14))))
(home-page "https://github.com/mitsuhiko/similar")
(synopsis "Diff library for Rust")
(description "This package provides a diff library for Rust.")
(license license:asl2.0)))
(define-public rust-similar-1 (define-public rust-similar-1
(package (package
(name "rust-similar") (name "rust-similar")
@ -57514,6 +57615,78 @@ algorithm. Includes streaming compression and decompression.")
("rust-lazy-static" ,rust-lazy-static-1) ("rust-lazy-static" ,rust-lazy-static-1)
("rust-snappy-cpp" ,rust-snappy-cpp-0.1)))))) ("rust-snappy-cpp" ,rust-snappy-cpp-0.1))))))
(define-public rust-snapbox-macros-0.2
(package
(name "rust-snapbox-macros")
(version "0.2.1")
(source (origin
(method url-fetch)
(uri (crate-uri "snapbox-macros" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0c79lnjcs9yp62y665swv5y5y6088qc256bfr3s7xcnb0izfl7f0"))))
(build-system cargo-build-system)
(home-page "https://github.com/assert-rs/trycmd/tree/main/crates/snapbox")
(synopsis "Snapshot testing toolbox")
(description
"snapbox is a snapshot-testing toolbox that is ready to use for verifying
output from
@itemize
@item Function return values
@item CLI stdout/stderr
@item Filesystem changes
@end itemize
It is also flexible enough to build your own test harness like @code{trycmd}.")
(license (list license:expat license:asl2.0))))
(define-public rust-snapbox-0.2
(package
(name "rust-snapbox")
(version "0.2.10")
(source (origin
(method url-fetch)
(uri (crate-uri "snapbox" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"14zxmsi4k9a9vgp9vs1q62ff1k57p26rwp5xs6f9bdijl9fisykn"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-backtrace" ,rust-backtrace-0.3)
("rust-concolor" ,rust-concolor-0.0.8)
("rust-content-inspector" ,rust-content-inspector-0.2)
("rust-document-features" ,rust-document-features-0.2)
("rust-dunce" ,rust-dunce-1)
("rust-filetime" ,rust-filetime-0.2)
("rust-ignore" ,rust-ignore-0.4)
("rust-libtest-mimic" ,rust-libtest-mimic-0.3)
("rust-normalize-line-endings" ,rust-normalize-line-endings-0.3)
("rust-os-pipe" ,rust-os-pipe-1)
("rust-similar" ,rust-similar-2)
("rust-snapbox-macros" ,rust-snapbox-macros-0.2)
("rust-tempfile" ,rust-tempfile-3)
("rust-wait-timeout" ,rust-wait-timeout-0.2)
("rust-walkdir" ,rust-walkdir-2)
("rust-yansi" ,rust-yansi-0.5))))
(home-page "https://github.com/assert-rs/trycmd/tree/main/crates/snapbox")
(synopsis "Snapshot testing toolbox")
(description
"snapbox is a snapshot-testing toolbox that is ready to use for verifying
output from
@itemize
@item Function return values
@item CLI stdout/stderr
@item Filesystem changes
@end itemize
It is also flexible enough to build your own test harness like @code{trycmd}.")
(license (list license:expat license:asl2.0))))
(define-public rust-snappy-cpp-0.1 (define-public rust-snappy-cpp-0.1
(package (package
(name "rust-snappy-cpp") (name "rust-snappy-cpp")
@ -65185,6 +65358,36 @@ serializing Rust structures.")
(license (list license:asl2.0 (license (list license:asl2.0
license:expat)))) license:expat))))
(define-public rust-toml-edit-0.14
(package
(name "rust-toml-edit")
(version "0.14.3")
(source
(origin
(method url-fetch)
(uri (crate-uri "toml_edit" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "01g772nkn5lmzaayssjd83rs3ri9ivny8r3wz2b3df1isrgkg65s"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-combine" ,rust-combine-4)
("rust-indexmap" ,rust-indexmap-1)
("rust-itertools" ,rust-itertools-0.10)
("rust-kstring" ,rust-kstring-2)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-criterion" ,rust-criterion-0.3)
("rust-pretty-assertions" ,rust-pretty-assertions-1)
("rust-snapbox" ,rust-snapbox-0.2))))
(home-page "https://github.com/ordian/toml_edit")
(synopsis "Yet another format-preserving TOML parser.")
(description "This package provides yet another format-preserving TOML
parser.")
(license (list license:expat license:asl2.0))))
(define-public rust-toml-edit-0.3 (define-public rust-toml-edit-0.3
(package (package
(name "rust-toml-edit") (name "rust-toml-edit")
@ -66883,6 +67086,38 @@ the Trust-DNS client to use rustls for TLS.")
"Test harness for ui tests of compiler diagnostics.") "Test harness for ui tests of compiler diagnostics.")
(license (list license:expat license:asl2.0)))) (license (list license:expat license:asl2.0))))
(define-public rust-trycmd-0.13
(package
(name "rust-trycmd")
(version "0.13.4")
(source (origin
(method url-fetch)
(uri (crate-uri "trycmd" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"04wzh907rkxac5kxlai0s630qh9z122w2m1s2x14d46c4r8iid7z"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-escargot" ,rust-escargot-0.5)
("rust-glob" ,rust-glob-0.3)
("rust-humantime" ,rust-humantime-2)
("rust-humantime-serde" ,rust-humantime-serde-1)
("rust-rayon" ,rust-rayon-1)
("rust-schemars" ,rust-schemars-0.8)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-shlex" ,rust-shlex-1)
("rust-snapbox" ,rust-snapbox-0.2)
("rust-toml-edit" ,rust-toml-edit-0.14))))
(home-page "https://github.com/assert-rs/trycmd")
(synopsis "Snapshot testing for a herd of CLI tests")
(description
"trycmd is a test harness that will enumerate test case files and run them to
verify the results, taking inspiration from @code{trybuild} and @code{cram}.")
(license (list license:expat license:asl2.0))))
(define-public rust-ttf-parser-0.12 (define-public rust-ttf-parser-0.12
(package (package
(name "rust-ttf-parser") (name "rust-ttf-parser")

View file

@ -2,9 +2,9 @@
;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz> ;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
;;; Copyright © 2015, 2020, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015, 2020, 2021, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Roel Janssen <roel@gnu.org> ;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
@ -33,6 +33,7 @@
(define-module (gnu packages curl) (define-module (gnu packages curl)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix utils) #:use-module (guix utils)
@ -63,9 +64,10 @@
(package (package
(name "curl") (name "curl")
(version "7.82.0") (version "7.82.0")
(replacement curl-7.84.0)
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://curl.haxx.se/download/curl-" (uri (string-append "https://curl.se/download/curl-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
@ -139,6 +141,35 @@ tunneling, and so on.")
"See COPYING in the distribution.")) "See COPYING in the distribution."))
(home-page "https://curl.haxx.se/"))) (home-page "https://curl.haxx.se/")))
;; Replacement package with fixes for multiple vulnerabilities.
;; See <https://curl.se/docs/security.html>.
(define curl-7.84.0
(package
(inherit curl)
(version "7.84.0")
(source (origin
(inherit (package-source curl))
(uri (string-append "https://curl.se/download/curl-"
version ".tar.xz"))
(sha256
(base32
"1f2xgj0wvys9xw50h7vcbaraavjr9rxx9n06x2xfbgs7ym1qn49d"))
(patches (append (origin-patches (package-source curl))
(search-patches "curl-easy-lock.patch")))))
(arguments (substitute-keyword-arguments (package-arguments curl)
((#:phases phases)
(cond
((not (target-64bit?))
#~(modify-phases #$phases
(add-after 'unpack 'tweak-lib3026-test
(lambda _
;; Have that test create a hundred threads, not a
;; thousand.
(substitute* "tests/libtest/lib3026.c"
(("NUM_THREADS .*$")
"NUM_THREADS 100\n"))))))
(else phases)))))))
(define-public curl-minimal (define-public curl-minimal
(deprecated-package "curl-minimal" curl)) (deprecated-package "curl-minimal" curl))

View file

@ -57,6 +57,7 @@
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com> ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -147,6 +148,7 @@
#:use-module (gnu packages sphinx) #:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh) #:use-module (gnu packages ssh)
#:use-module (gnu packages sqlite) #:use-module (gnu packages sqlite)
#:use-module (gnu packages syncthing) ;for go-github-com-lib-pq
#:use-module (gnu packages tcl) #:use-module (gnu packages tcl)
#:use-module (gnu packages terminals) #:use-module (gnu packages terminals)
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
@ -1248,39 +1250,13 @@ pictures, sounds, or video.")
(package (package
(inherit postgresql-14) (inherit postgresql-14)
(version "13.6") (version "13.6")
(replacement postgresql-13/replacement)
(source (origin (source (origin
(inherit (package-source postgresql-14)) (inherit (package-source postgresql-14))
(uri (string-append "https://ftp.postgresql.org/pub/source/v" (uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2")) version "/postgresql-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1z37ix80hb2bqa2smh1hbj9r507ypnl3pil43gkqznnlv6ipzz5s")) "1z37ix80hb2bqa2smh1hbj9r507ypnl3pil43gkqznnlv6ipzz5s"))))))
(patches (search-patches "postgresql-riscv-spinlocks.patch"))))))
;; The merge of commit ...
;; 781dd2de230e3 gnu: postgresql-13: Fix building on riscv64-linux.
;; ... in ...
;; 49b350fafc2c3 Merge branch 'master' into staging.
;; ... lost the inherited patch from postgresql-14, causing problems such as ...
;; 05fef7bfc6005 gnu: timescaledb: Adjust test preparation to PostgreSQL 13.6.
;;
;; While at it, remove the RISC-V spinlock patch, which has been upstreamed
;; in a different form (so the old patch still applies).
;; TODO: Remove in the next rebuild cycle.
(define postgresql-13/replacement
(package
(inherit postgresql-13)
(version "13.7")
(source
(origin
(inherit (package-source postgresql-13))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"16b3ljid7zd1v5l4l4pmwihx43wi8p9izidkjfii8dnqygs5p40v"))
(patches (search-patches "postgresql-disable-resolve_symlinks.patch"))))))
(define-public postgresql-11 (define-public postgresql-11
(package (package
@ -1293,9 +1269,7 @@ pictures, sounds, or video.")
version "/postgresql-" version ".tar.bz2")) version "/postgresql-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1983a7y4y6zhbgh0qcdfkf99445j1zm5q1ncrbkrx555y08y3n9d")) "1983a7y4y6zhbgh0qcdfkf99445j1zm5q1ncrbkrx555y08y3n9d"))))
(patches (search-patches
"postgresql-disable-resolve_symlinks.patch"))))
(native-inputs (native-inputs
(modify-inputs (package-native-inputs postgresql-13) (modify-inputs (package-native-inputs postgresql-13)
(replace "docbook-xml" docbook-xml-4.2))))) (replace "docbook-xml" docbook-xml-4.2)))))
@ -1578,7 +1552,7 @@ organized in a hash table or B+ tree.")
;; XXX Without labels, the default 'configure phase picks the wrong "bash". ;; XXX Without labels, the default 'configure phase picks the wrong "bash".
`(("bc" ,bc) `(("bc" ,bc)
("bash:include" ,bash "include") ("bash:include" ,bash "include")
("check" ,check-0.14) ("check" ,check)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs
;; TODO: Add more optional inputs. ;; TODO: Add more optional inputs.
@ -1598,14 +1572,14 @@ types are supported, as is encryption.")
(define-public emacs-rec-mode (define-public emacs-rec-mode
(package (package
(name "emacs-rec-mode") (name "emacs-rec-mode")
(version "1.8.3") (version "1.9.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/" (uri (string-append "https://elpa.gnu.org/packages/"
"rec-mode-" version ".tar")) "rec-mode-" version ".tar"))
(sha256 (sha256
(base32 (base32
"0lkmvvdj4xx3qhxqggizrcdawav0accyrza2wmhfdq88g2zh5575")) "1w1q6kh567fd8xismq9i6wr1y893lypd30l452yvydi1qjiq1n6x"))
(snippet '(begin (delete-file "rec-mode.info"))))) (snippet '(begin (delete-file "rec-mode.info")))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
@ -4789,3 +4763,35 @@ create design, and edit database file compatible with SQLite.")
;; dual license ;; dual license
(list license:gpl3+ (list license:gpl3+
license:mpl2.0)))) license:mpl2.0))))
(define-public sqls
(package
(name "sqls")
(version "0.2.18")
(home-page "https://github.com/lighttiger2505/sqls")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"13837v27avdp2nls3vyy7ml12nj7rxragchwf92adn10ffp4aj6c"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/lighttiger2505/sqls"))
(inputs (list go-github-com-go-sql-driver-mysql
go-github-com-lib-pq
go-github-com-mattn-go-sqlite3
go-github-com-olekukonko-tablewriter
go-github-com-pkg-errors
go-github-com-sourcegraph-jsonrpc2
go-golang-org-x-crypto
go-github.com-mattn-go-runewidth
go-golang-org-x-xerrors
go-gopkg-in-yaml-v2))
(synopsis "SQL language server written in Go")
(description
"This package implements the @acronym{LSP, Language Server Protocol} for SQL.")
(license license:expat)))

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2019, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2021 Tanguy Le Carrour <tanguy@bioneland.org>
@ -42,7 +42,7 @@
(define-public radicale (define-public radicale
(package (package
(name "radicale") (name "radicale")
(version "3.1.5") (version "3.1.7")
(source (source
(origin (origin
;; There are no tests in the PyPI tarball. ;; There are no tests in the PyPI tarball.
@ -52,7 +52,7 @@
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0wg0dg5bq221c6mj6fq53x82w0hb5hyyi8dqxkf6qnhf99bx8qrw")))) (base32 "1mv1w9qazbis9ir5shr1ybsfn4cxd3rmxa3ns6kbk23yramlzwhg"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list

View file

@ -31,14 +31,14 @@
(define-public dezyne (define-public dezyne
(package (package
(name "dezyne") (name "dezyne")
(version "2.15.2") (version "2.15.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://dezyne.org/download/dezyne/" (uri (string-append "https://dezyne.org/download/dezyne/"
name "-" version ".tar.gz")) name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "0yy4cmpxhw4z82bc1mvxyic4fnmb9a1d3w8fijvk1y2kqx2fiq6f")))) (base32 "0d0jnnb3pgmspsz5qbgf33wsav5yp8wb45igns1sfinaz743n870"))))
(inputs (list bash-minimal (inputs (list bash-minimal
guile-3.0-latest guile-3.0-latest
guile-json-4 guile-json-4

View file

@ -5,6 +5,7 @@
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2019 Vagrant Cascadian <vagrant@reproducible-builds.org> ;;; Copyright © 2019 Vagrant Cascadian <vagrant@reproducible-builds.org>
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -73,7 +74,7 @@
(define-public diffoscope (define-public diffoscope
(package (package
(name "diffoscope") (name "diffoscope")
(version "217") (version "219")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -82,7 +83,7 @@
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0vbyg8lm5ddrdkhahcs70rhdmz42blppzliryghxcyyxs7g3gzq5")) (base32 "0n6dn53paxi1316fnv5abw5rlvpfd2kpfn3b08wfzrcb6chsx7br"))
(patches (patches
(search-patches "diffoscope-fix-llvm-test.patch")))) (search-patches "diffoscope-fix-llvm-test.patch"))))
(build-system python-build-system) (build-system python-build-system)
@ -171,9 +172,15 @@
docx2txt docx2txt
dtc dtc
e2fsprogs e2fsprogs
ffmpeg ffmpeg)
fpc
gettext-minimal (match (%current-system)
;; fpc is only available on x86 currently.
((or "x86_64-linux" "i686-linux")
(list fpc))
(_ '()))
(list gettext-minimal
ghostscript ghostscript
`(,giflib "bin") `(,giflib "bin")
gnumeric gnumeric

View file

@ -54,13 +54,13 @@
(define-public python-django-4.0 (define-public python-django-4.0
(package (package
(name "python-django") (name "python-django")
(version "4.0.4") (version "4.0.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "Django" version)) (uri (pypi-uri "Django" version))
(sha256 (sha256
(base32 (base32
"1da0vy3nas2m2j50dc5c3s1nv529lagg4c04riipah94hn2pg0af")))) "1bn3lg68r2bz6rzwnd7y2sin6fi9vahdqdsmamrx6zw2yqzpjym6"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -141,13 +141,13 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
(define-public python-django-3.2 (define-public python-django-3.2
(package (package
(inherit python-django-4.0) (inherit python-django-4.0)
(version "3.2.13") (version "3.2.14")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "Django" version)) (uri (pypi-uri "Django" version))
(sha256 (sha256
(base32 (base32
"1dn4irl4m21skcqb2mbj55vgryqfqk6wqa8s1c7bmxlv19x4k4vd")))) "1krg0bfd78mnqly1gzbprssz3bz6xryc2fig0x75la2vifx84wb7"))))
(native-search-paths '()) ;no need for TZDIR (native-search-paths '()) ;no need for TZDIR
(propagated-inputs (propagated-inputs
(modify-inputs (package-propagated-inputs python-django-4.0) (modify-inputs (package-propagated-inputs python-django-4.0)

View file

@ -486,33 +486,33 @@ the in DocBook SGML DTDs.")
;; TODO: Add xfig/transfig for fig2dev utility ;; TODO: Add xfig/transfig for fig2dev utility
(inputs (inputs
`(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts `(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
texlive-latex-anysize texlive-latex-anysize
texlive-latex-appendix texlive-latex-appendix
texlive-latex-bookmark texlive-latex-bookmark
texlive-latex-changebar texlive-latex-changebar
texlive-latex-colortbl texlive-latex-colortbl
texlive-latex-fancybox texlive-latex-fancybox
texlive-fancyhdr texlive-fancyhdr
texlive-fancyvrb texlive-fancyvrb
texlive-latex-float texlive-latex-float
texlive-latex-footmisc texlive-latex-footmisc
texlive-hyperref texlive-hyperref
texlive-latex-jknapltx texlive-latex-jknapltx
texlive-listings texlive-listings
texlive-latex-multirow texlive-latex-multirow
texlive-latex-overpic texlive-latex-overpic
texlive-pdfpages texlive-pdfpages
texlive-refcount texlive-refcount
texlive-subfigure texlive-subfigure
texlive-titlesec texlive-titlesec
texlive-wasysym texlive-wasysym
texlive-fonts-rsfs texlive-fonts-rsfs
texlive-stmaryrd texlive-stmaryrd
texlive-iftex))) texlive-iftex)))
("imagemagick" ,imagemagick) ;for convert ("imagemagick" ,imagemagick) ;for convert
("inkscape" ,inkscape) ;for svg conversion ("inkscape" ,inkscape/stable) ;for svg conversion
("docbook" ,docbook-xml) ("docbook" ,docbook-xml)
("libxslt" ,libxslt))) ;for xsltproc ("libxslt" ,libxslt))) ;for xsltproc
(arguments (arguments

View file

@ -6,7 +6,7 @@
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com> ;;; Copyright © 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2020 Jesse Dowell <jessedowell@gmail.com> ;;; Copyright © 2020 Jesse Dowell <jessedowell@gmail.com>
;;; Copyright © 2021 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2021, 2022 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2022 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2022 Pierre Langlois <pierre.langlois@gmx.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -184,7 +184,9 @@ Python without keeping their credentials in a Docker configuration file.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1vsl747i3wyy68j4lp4nprwxadbyga8qxlrk892afcd2990zp5mr")))) (base32 "1vsl747i3wyy68j4lp4nprwxadbyga8qxlrk892afcd2990zp5mr"))
(patches
(search-patches "containerd-create-pid-file.patch"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
(let ((make-flags #~(list (string-append "VERSION=" #$version) (let ((make-flags #~(list (string-append "VERSION=" #$version)

View file

@ -112,7 +112,7 @@ to take care of the OS-specific details when writing software that uses serial p
"/share/doc/libsigrokdecode")) "/share/doc/libsigrokdecode"))
#t))))) #t)))))
(native-inputs (native-inputs
(list check-0.14 doxygen graphviz pkg-config automake autoconf)) (list check doxygen graphviz pkg-config automake autoconf))
;; libsigrokdecode.pc lists "python" in Requires.private, and "glib" in Requires. ;; libsigrokdecode.pc lists "python" in Requires.private, and "glib" in Requires.
(propagated-inputs (propagated-inputs
(list glib python)) (list glib python))

File diff suppressed because it is too large Load diff

View file

@ -659,7 +659,7 @@ with a layered architecture of JTAG interface and TAP support.")
(sha256 (sha256
(base32 (base32
"0w0dff3s7wv2d9m78a4jhckiik58q38wx6wpbba5hzbs4yxz35ck")) "0w0dff3s7wv2d9m78a4jhckiik58q38wx6wpbba5hzbs4yxz35ck"))
(patch-flags (list "-p1" "--directory=binutils")))) (patches '())))
(arguments (arguments
`(;; FIXME: For some reason there are many test failures. It's not `(;; FIXME: For some reason there are many test failures. It's not
;; obvious how to fix the failures. ;; obvious how to fix the failures.

View file

@ -773,7 +773,7 @@ and Game Boy Color games.")
(define-public sameboy (define-public sameboy
(package (package
(name "sameboy") (name "sameboy")
(version "0.14.7") (version "0.15")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -782,7 +782,7 @@ and Game Boy Color games.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1r391jdh0gjnx8bwmr63dcdmq58lpm162mng2ncrx53ydbb13xxf")))) (base32 "0rhl9khc5pxbikjsq4aha5cpqfxf3bnxalc94idd4haw0zf892q9"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list rgbds pkg-config)) (list rgbds pkg-config))
@ -1712,7 +1712,7 @@ This is a part of the TiLP project.")
(define-public mame (define-public mame
(package (package
(name "mame") (name "mame")
(version "0.241") (version "0.245")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1721,7 +1721,7 @@ This is a part of the TiLP project.")
(commit (apply string-append "mame" (string-split version #\.))))) (commit (apply string-append "mame" (string-split version #\.)))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "13bm81qyzvpllzmrak5nb87cdyyvsv4hcnznnrz4jyx1bd8ky6ap")) (base32 "1w34hcvnibnz0xaydh2kdciffng07zins9lnrv041fmzlk4318qb"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Remove bundled libraries. ;; Remove bundled libraries.

View file

@ -34,6 +34,8 @@
;;; Copyright © 2022 Konstantinos Agiannis <agiannis.kon@gmail.com> ;;; Copyright © 2022 Konstantinos Agiannis <agiannis.kon@gmail.com>
;;; Copyright © 2022 Greg Hogan <code@greghogan.com> ;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com> ;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -1864,12 +1866,20 @@ an embedded event driven algorithm.")
(name "trilinos-serial-xyce") (name "trilinos-serial-xyce")
(version "12.12.1") (version "12.12.1")
(source (source
(origin (method url-fetch) (origin
(uri (string-append "https://trilinos.org/oldsite/download/files/trilinos-" (method git-fetch)
version "-Source.tar.gz")) (uri (git-reference
(sha256 (url "https://github.com/trilinos/Trilinos")
(base32 (commit (string-append "trilinos-release-"
"1zgrcksrcbmyy79mbdv0j4j4sh0chpigxk8vcrrwgaxyxwxxhrvw")))) (string-map (lambda (chr)
(case chr
((#\.) #\-)
(else chr)))
version)))))
(file-name (git-file-name name version))
(sha256
(base32
"1smz3wlpfyjn0czmpl8bj4hw33p1zi9nnfygpsx7jl1523nypa1n"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:out-of-source? #t `(#:out-of-source? #t
@ -1881,8 +1891,7 @@ an embedded event driven algorithm.")
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(delete-file-recursively (delete-file-recursively
(string-append (assoc-ref outputs "out") (string-append (assoc-ref outputs "out")
"/lib/cmake/tribits")) "/lib/cmake/tribits")))))
#t)))
#:configure-flags #:configure-flags
(list "-DCMAKE_CXX_FLAGS=-O3 -fPIC" (list "-DCMAKE_CXX_FLAGS=-O3 -fPIC"
"-DCMAKE_C_FLAGS=-O3 -fPIC" "-DCMAKE_C_FLAGS=-O3 -fPIC"
@ -1910,13 +1919,8 @@ an embedded event driven algorithm.")
"-DTPL_ENABLE_UMFPACK=ON" "-DTPL_ENABLE_UMFPACK=ON"
"-DTPL_ENABLE_BLAS=ON" "-DTPL_ENABLE_BLAS=ON"
"-DTPL_ENABLE_LAPACK=ON"))) "-DTPL_ENABLE_LAPACK=ON")))
(native-inputs (native-inputs (list gfortran swig))
`(("fortran" ,gfortran) (inputs (list boost lapack suitesparse))
("swig" ,swig)))
(inputs
`(("boost" ,boost)
("lapack" ,lapack)
("suitesparse" ,suitesparse)))
(home-page "https://trilinos.org") (home-page "https://trilinos.org")
(synopsis "Engineering and scientific problems algorithms") (synopsis "Engineering and scientific problems algorithms")
(description (description
@ -2854,20 +2858,23 @@ data structures and to operate on them.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public pcb2gcode (define-public pcb2gcode
;; Take some additional commits after v2.4.0 to fix build against
;; geos 3.10.1.
(let ((commit "ae41f9fe41e57ee5d0cced6c3b3c8aea9c3f5392"))
(package (package
(name "pcb2gcode") (name "pcb2gcode")
(version "2.1.0") (version (git-version "2.4.0" "1" commit))
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/pcb2gcode/pcb2gcode") (url "https://github.com/pcb2gcode/pcb2gcode")
(commit (string-append "v" version)) (commit commit)
(recursive? #t))) (recursive? #t)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0nzglcyh6ban27cc73j4l7w7r9k38qivq0jz8iwnci02pfalw4ry")))) "1r1qmvpn5ffi2xpq2gigwsk8kn79s4s2ywfvicwf8i7rzwhkdf17"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list boost (list boost
@ -2884,7 +2891,7 @@ data structures and to operate on them.")
and drilling of PCBs. It takes Gerber files as input and outputs G-code files and drilling of PCBs. It takes Gerber files as input and outputs G-code files
for the milling of PCBs. It also includes an autoleveller for the automatic for the milling of PCBs. It also includes an autoleveller for the automatic
dynamic calibration of the milling depth.") dynamic calibration of the milling depth.")
(license license:gpl3+))) (license license:gpl3+))))
(define-public syscall-intercept (define-public syscall-intercept
;; Upstream provides no tag. Also, last version update is 4 years old. ;; Upstream provides no tag. Also, last version update is 4 years old.
@ -3688,3 +3695,65 @@ hierarchical and parametric design. It can generate VHDL, Verilog or Spice
netlists from the drawn schematic, allowing the simulation of the circuit.") netlists from the drawn schematic, allowing the simulation of the circuit.")
(home-page "https://xschem.sourceforge.io/stefan/index.html") (home-page "https://xschem.sourceforge.io/stefan/index.html")
(license license:gpl2+)))) (license license:gpl2+))))
(define-public candle
;; The latest tagged version 1.2b fails on the build stage due to
;; non-supported g++ flags so we need to use the latest commit from the
;; 'master' branch in the repository.
(let ((commit "3f763bcde1195e23ba119a5b3c70d7c889881019")
(revision "1"))
(package
(name "candle")
(version (git-version "1.2b" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Denvi/Candle")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"08rqhl6a5a8s67a8yl16944zgcsnnb08xfv4klzyqwlvaqgfp783"))))
(build-system gnu-build-system)
(native-inputs (list qttools))
(inputs (list qtbase-5 qtserialport))
(arguments
(list #:tests? #f ; no tests.
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'fix-sources
(lambda _
(substitute* (find-files "." ".*\\.h")
(("const char\\* what\\(\\) const override")
"const char* what() const noexcept override"))))
(add-after 'unpack 'fix-application-settings-path
(lambda _
(substitute* "src/frmmain.cpp"
(("\
qApp->applicationDirPath\\(\\) \\+ \"\\/settings\\.ini\"")
"QDir::homePath() + \"/.config/candle.ini\""))))
(replace 'configure
(lambda _
(chdir "src")
(invoke "qmake"
(string-append "QMAKE_CC="
#$(cc-for-target)))))
(replace 'install
(lambda _
(install-file "Candle"
(string-append #$output "/bin")))))))
(home-page "https://github.com/Denvi/Candle")
(synopsis "GRBL controller with G-Code visualizer")
(description
"Candle is a GRBL controller application with a visualizer for G-Code,
the @acronym{CNC, computer numerical control} programming language.
Supported functions include:
@itemize
@item Controlling GRBL-based cnc-machine via console commands, buttons on
form, numpad.
@item Monitoring CNC-machine state.
@item Loading, editing, saving and sending of G-code files to CNC-machine.
@item Visualizing G-code files.
@end itemize")
(license license:gpl3+))))

View file

@ -465,7 +465,7 @@ Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).")
(lambda _ (setenv "HOME" "/tmp") #t))) (lambda _ (setenv "HOME" "/tmp") #t)))
#:tests? #f)) ; tests require running dbus service #:tests? #f)) ; tests require running dbus service
(native-inputs (native-inputs
`(("check" ,check-0.14) `(("check" ,check)
("gettext" ,gettext-minimal) ("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs

View file

@ -3,7 +3,7 @@
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017, 2018, 2021 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019-2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org> ;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com> ;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com> ;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com>
@ -428,7 +428,9 @@ from a mounted file system.")
"INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools" "INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools"
(string-append "CC=" #$(cc-for-target)) (string-append "CC=" #$(cc-for-target))
(string-append "PKG_CONFIG=" #$(pkg-config-for-target)) (string-append "PKG_CONFIG=" #$(pkg-config-for-target))
"PYTEST=pytest") (string-append "PYTEST_CMD="
#$(this-package-native-input "python-pytest")
"/bin/pytest"))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(delete 'configure) ; no configure script (delete 'configure) ; no configure script
@ -444,16 +446,18 @@ from a mounted file system.")
,(list (string-append #$output "/sbin") ,(list (string-append #$output "/sbin")
(string-append #$coreutils-minimal "/bin") (string-append #$coreutils-minimal "/bin")
(string-append #$gawk "/bin") (string-append #$gawk "/bin")
(string-append #$util-linux "/bin")))))))) (string-append #$util-linux "/bin"))))))))))
#:tests? #f)) ; XXX 6 valgrind tests fail
(native-inputs (native-inputs
(list pkg-config (append
;; For tests. (list pkg-config
python-pytest ;; For tests.
valgrind python-pytest)
;; For generating documentation with rst2man. (if (member (%current-system) (package-supported-systems valgrind))
python (list valgrind)
python-docutils)) '())
;; For generating documentation with rst2man.
(list python
python-docutils)))
(inputs (inputs
(list eudev (list eudev
keyutils keyutils

View file

@ -29,6 +29,7 @@
;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com> ;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org> ;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -62,6 +63,7 @@
#:use-module (guix deprecation) #:use-module (guix deprecation)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (srfi srfi-26)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages aidc) #:use-module (gnu packages aidc)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
@ -1350,6 +1352,126 @@ information.")
(home-page "https://grisbi.org") (home-page "https://grisbi.org")
(license license:gpl2+))) (license license:gpl2+)))
(define-public gbonds
;; The last "upstream" commit is from about 2008, but the Debian maintainers
;; have effectively become the upstream with an extensive series of patches.
;; However, the patches are stored "unapplied", and some enhancements (like
;; a decade's worth of new data files) rely on the Debian packaging tools,
;; so building normally even from the patched sources would miss them.
;; Here, we do all of the patching in the origin, so that the result of
;; `guix build --source` is actually useable for building without Guix.
(let ((revision "1")
(commit "3054ee2f90cc7c03ed6b131177d09701c7a4fced"))
(package
(name "gbonds")
(version (git-version "2.0.3" revision commit))
(source
(let ((unapplied
(origin
(method git-fetch)
(uri (git-reference
(url "https://salsa.debian.org/debian/gbonds.git")
(commit commit)))
(sha256
(base32
"1sqzzfymzxbnq6cjs5wvjbnvcrkdlimlmj2h7mlcaa9qqdpsgfki"))
(file-name (git-file-name name version)))))
(origin
(inherit unapplied)
(patches
;; The order matters.
(map (cut file-append unapplied "/debian/patches/" <>)
'("desktop-file"
"POTFILES"
"POTFILES.missing"
"commands-compile"
"egg-recent-model-compile"
"gbonds-name-case"
"copyright-update"
"website-url"
"link-libm"
"xmldocs"
"configure-compiler-warnings"
"omf"
"desktop-file-keywords"
"replace-g_strcasecmp"
"gtk3-port"
"gsettings-port"
"no-rarian-compat"
"extern-gb_prefs"
"use-treasury-api.patch")))
(snippet
#~(begin
(use-modules (guix build utils)
(srfi srfi-26))
;; Remove generated files, which have not been patched.
(for-each (lambda (pth)
(when (file-exists? pth)
(delete-file pth)))
`(;; Things `make maintainer-clean` would do.
"gbonds.spec"
"src/marshal.c"
"src/marshal.h"
;; Things upstream's distclean missed.
"intltool-extract"
"intltool-merge"
"intltool-update"
;; Autotools generated files.
"aclocal.m4"
"config.guess"
"config.h.in"
"config.log"
"config.sub"
"configure"
"depcomp"
"intltool-extract.in"
"intltool-merge.in"
"intltool-update.in"
"ltmain.sh"
,@(find-files "." "^Makefile\\.in$")))
;; Arrange for `make install` to handle the additional
;; redemption data files added in the Debian packaging.
(let* ((new-redemption-data-files
(find-files "debian" "^sb[[:digit:]]+\\.asc$"))
(names
(map (cut substring <> (string-length "debian/"))
new-redemption-data-files)))
(for-each rename-file
new-redemption-data-files
(map (cut string-append "data/" <>)
names))
(substitute* "data/Makefile.am"
(("redemption_DATA = \\\\")
(apply string-append
"redemption_DATA = \\"
(map (cut string-append "\n\t" <> " \\")
names))))))))))
(outputs '("out" "debug"))
(inputs (list gtk+
glib
json-glib
libxml2
libsoup-minimal-2
cairo
pango))
(native-inputs (list autoconf
automake
intltool
libtool
patch
pkg-config))
(build-system glib-or-gtk-build-system)
(home-page "http://gbonds.sourceforge.net")
(synopsis "@acronym{U.S.} Savings Bond inventory program for GNOME")
(description
"GBonds is a @acronym{U.S.} Savings Bond inventory program for the
GNOME desktop environment. It allows you to track the current redemption
value and performance of your @acronym{U.S.} Savings Bonds and keep a valuable
record of the bonds you own.")
(license license:gpl2+))))
(define-public trezord-udev-rules (define-public trezord-udev-rules
(let ((commit "bff7fdfe436c727982cc553bdfb29a9021b423b0") (let ((commit "bff7fdfe436c727982cc553bdfb29a9021b423b0")
(revision "0")) (revision "0"))

View file

@ -225,7 +225,7 @@ broadband modem as found, for example, on PinePhone.")
(define* (make-opensbi-package platform name #:optional (arch "riscv64")) (define* (make-opensbi-package platform name #:optional (arch "riscv64"))
(package (package
(name name) (name name)
(version "1.0") (version "1.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -234,7 +234,7 @@ broadband modem as found, for example, on PinePhone.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0srqkhd9b1mq4qkqk31dlrzy4mhljr49bzjxm0saylsbwhgxq31s")))) (base32 "0xlnhl965286kvizyjm571qbhj3l5n71a02dmbmgxzcqapzgi9wk"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(,@(if (and (not (string-prefix? "riscv64" (%current-system))) `(,@(if (and (not (string-prefix? "riscv64" (%current-system)))

View file

@ -49,6 +49,7 @@
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com> ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Liliana Marie Prikler <liliana.prikler@gmail.com> ;;; Copyright © 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2022 Jose G Perez Taveras <josegpt27@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -91,6 +92,26 @@
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)
#:use-module (gnu packages xorg)) #:use-module (gnu packages xorg))
(define-public font-artifika
(package
(name "font-artifika")
(version "1.102")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cyrealtype/Artifika")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0nwjm44nys1qz3wyg0mm15gdjpz641xpmsz00n6m8065xrw86q7i"))))
(build-system font-build-system)
(home-page "https://github.com/cyrealtype/Artifika")
(synopsis "Upright italic font")
(description "Artifika is an upright italic font for fashionable display
titling.")
(license license:silofl1.1)))
(define-public font-ibm-plex (define-public font-ibm-plex
(package (package
(name "font-ibm-plex") (name "font-ibm-plex")
@ -2182,14 +2203,14 @@ always uses Farsi digits, and does not include Latin glyphs from Roboto.
(define-public font-victor-mono (define-public font-victor-mono
(package (package
(name "font-victor-mono") (name "font-victor-mono")
(version "1.4.2") (version "1.5.3")
(source (origin (source (origin
(method url-fetch/zipbomb) (method url-fetch/zipbomb)
(uri (string-append (uri (string-append
"https://github.com/rubjo/victor-mono/raw/v" "https://github.com/rubjo/victor-mono/raw/v"
version version
"/public/VictorMonoAll.zip")) "/public/VictorMonoAll.zip"))
(sha256 "01260vja0d22mcvkzspf0xnl7b851r0265arqkm12q1vagzyxvkm"))) (sha256 "1axiwxz8l46cc60jfp2la8a9qpj866236lz3dc5l6m35r9as56l3")))
(build-system font-build-system) (build-system font-build-system)
(synopsis "Font with support for italics and ligatures") (synopsis "Font with support for italics and ligatures")
(description "Victor Mono is an open-source monospaced font with (description "Victor Mono is an open-source monospaced font with

View file

@ -485,14 +485,14 @@ freedesktop.org project.")
;; Updating this will rebuild over 700 packages through libinput-minimal. ;; Updating this will rebuild over 700 packages through libinput-minimal.
(package (package
(name "libinput") (name "libinput")
(version "1.19.2") (version "1.19.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/" (uri (string-append "https://freedesktop.org/software/libinput/"
"libinput-" version ".tar.xz")) "libinput-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"10xqk05mkvsyxfxpn3vwkwb7j22d38wlbg1l1k37f6pfyc59zhqg")))) "0h5lz54rrl48bhi3vki6s08m6rn2h62rlf08dhgchdm9nmqaaczz"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:configure-flags '("-Ddocumentation=false") `(#:configure-flags '("-Ddocumentation=false")

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Marek Benc <merkur32@gmail.com> ;;; Copyright © 2014 Marek Benc <merkur32@gmail.com>
;;; Copyright © 2016, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2019, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -97,4 +97,6 @@ or right-to-left ordering as necessary.")
to visual-Hebrew output. This is useful for reading Hebrew mail messages, to visual-Hebrew output. This is useful for reading Hebrew mail messages,
viewing Hebrew texts, etc. It was written for Hebrew but Arabic (or other BiDi viewing Hebrew texts, etc. It was written for Hebrew but Arabic (or other BiDi
languages) should work equally well.") languages) should work equally well.")
(properties
'((release-monitoring-url . "https://deb.debian.org/debian/pool/main/b/bidiv")))
(license gpl2+))) (license gpl2+)))

View file

@ -1209,24 +1209,25 @@ to create fully featured games and multimedia programs in the python language.")
license:lgpl2.1+)))) license:lgpl2.1+))))
(define-public python-pygame-sdl2 (define-public python-pygame-sdl2
;; Using latest git commit as of 2022-06-17, because there is no tagged
;; release for renpy 8.
;; Revert back to URLs once renpy 8 is released!
(let ((real-version "2.1.0") (let ((real-version "2.1.0")
;;(renpy-version "8.0.0") (renpy-version "8.0.0"))
(commit "1705c6e3004dcb1daf859560bcd52eb093e97d45"))
(package (package
(inherit python-pygame) (inherit python-pygame)
(name "python-pygame-sdl2") (name "python-pygame-sdl2")
(version (git-version real-version "0" commit)) (version (string-append real-version "-for-renpy-" renpy-version))
(source (source
(origin (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (string-append "https://www.renpy.org/dl/" renpy-version
(url "https://github.com/renpy/pygame_sdl2") "/pygame_sdl2-" version ".tar.gz"))
(commit commit))) (sha256 (base32 "0majf64pdfba5byjlv41pgsdmwvy09hw3m7143jz3kc1wjd2gaw8"))
(file-name (git-file-name name version)) (modules '((guix build utils)))
(sha256 (base32 "1g0arhpd59zypspk36sgajf1kzavppfkv766vifvxar60968rrjn")))) (snippet
'(begin
;; drop generated sources
(delete-file-recursively "gen")
(delete-file-recursively "gen3")
(delete-file-recursively "gen-static")))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:tests? #f ; tests require pygame to be installed first `(#:tests? #f ; tests require pygame to be installed first
@ -1257,21 +1258,16 @@ While it aims to be used as a drop-in replacement, it appears to be
developed mainly for Ren'py.") developed mainly for Ren'py.")
(license (list license:lgpl2.1 license:zlib))))) (license (list license:lgpl2.1 license:zlib)))))
;; Using nightly from 2022-06-16.
;; Revert back to URLs once renpy 8 is released!
(define %renpy-commit "3e854bc7cb1642ca18b061a0c6e349f168965c43")
(define-public python-renpy (define-public python-renpy
(package (package
(name "python-renpy") (name "python-renpy")
(version (git-version "7.99.99" "0" %renpy-commit)) (version "8.0.0")
(source (source
(origin (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (string-append "https://www.renpy.org/dl/" version
(url "https://github.com/renpy/renpy") "/renpy-" version "-source.tar.bz2"))
(commit %renpy-commit))) (sha256 (base32 "09z3r16j4cxddkb50ghmi4xp0s05s15q4pzdmfajy85ignwqhjdi"))
(file-name (git-file-name name version))
(sha256 (base32 "11g7hqhw4gbkx5ib2wsawrznmjbn8r9zkgf2sg39z56h96y8wfbn"))
(modules '((guix build utils))) (modules '((guix build utils)))
(patches (patches
(search-patches (search-patches
@ -1280,7 +1276,10 @@ developed mainly for Ren'py.")
'(with-directory-excursion "module" '(with-directory-excursion "module"
;; drop fribidi sources ;; drop fribidi sources
(delete-file-recursively "fribidi-src") (delete-file-recursively "fribidi-src")
#t)))) ;; drop _renpytfd, as there are missing sources
(substitute* "setup.py"
(("cython\\(\"_renpytfd\"" all)
(string-append "pass # " all)))))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:tests? #f ; Ren'py doesn't seem to package tests `(#:tests? #f ; Ren'py doesn't seem to package tests
@ -1432,6 +1431,8 @@ are only used to bootstrap it.")
(string-append out "/share/renpy/common")) (string-append out "/share/renpy/common"))
(copy-recursively "gui" (copy-recursively "gui"
(string-append out "/share/renpy/gui")) (string-append out "/share/renpy/gui"))
(copy-recursively "sdk-fonts"
(string-append out "/share/renpy/sdk-fonts"))
(mkdir-p (string-append out "/bin")) (mkdir-p (string-append out "/bin"))
(copy-file #$(local-file (search-auxiliary-file "renpy/renpy.in")) (copy-file #$(local-file (search-auxiliary-file "renpy/renpy.in"))

View file

@ -72,6 +72,7 @@
;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com> ;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe> ;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe>
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com> ;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -1009,7 +1010,7 @@ allows users to brew while offline.")
(define-public corsix-th (define-public corsix-th
(package (package
(name "corsix-th") (name "corsix-th")
(version "0.65.1") (version "0.66")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1018,7 +1019,7 @@ allows users to brew while offline.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0hw92ln9jm9v55drmbfqjng58yshgwfpv7fqynryrg3gvg8zhbvh")))) (base32 "0sgsvhqgiq6v1v5am7ghja8blhlrj0y1arvq6xq1j5fwa7c59ihs"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -1102,46 +1103,6 @@ cows can think too: all you have to do is run @command{cowthink}. If you're
tired of cows, a variety of other ASCII-art messengers are available.") tired of cows, a variety of other ASCII-art messengers are available.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public lolcat
(let ((commit "35dca3d0a381496d7195cd78f5b24aa7b62f2154")
(revision "0"))
(package
(name "lolcat")
(version (git-version "1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jaseg/lolcat")
(commit commit)))
(sha256
(base32
"0jjbkqcc2ikjxd1xgdyv4rb0vsw218181h89f2ywg29ffs3ypd8g"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
#:make-flags
(list ,(string-append "CC=" (cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'bootstrap)
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dest (string-append out "/bin")))
(mkdir-p dest)
(install-file "lolcat" dest)
(install-file "censor" dest)
#t))))))
(home-page "https://github.com/jaseg/lolcat")
(synopsis "Rainbow coloring effect for text console display")
(description "@command{lolcat} concatenates files and streams like
regular @command{cat}, but it also adds terminal escape codes between
characters and lines resulting in a rainbow effect.")
(license license:wtfpl2))))
(define-public falltergeist (define-public falltergeist
(package (package
(name "falltergeist") (name "falltergeist")
@ -8033,14 +7994,17 @@ ncurses for text display.")
(define-public naev (define-public naev
(package (package
(name "naev") (name "naev")
(version "0.9.2") (version "0.9.3")
(source (source
(origin (origin
(method url-fetch) (method git-fetch)
(uri (string-append "https://github.com/naev/naev/releases/download/v" (uri (git-reference
version "/naev-" version "-source.tar.xz")) (url "https://github.com/naev/naev")
(commit (string-append "v" version))
(recursive? #t))) ; for game data
(file-name (git-file-name name version))
(sha256 (sha256
(base32 "1p6424n2rgrlb0h71gvww40vxs1h583d9im8bzgmv6dhgclbg0nl")))) (base32 "0hvgxzvph9s5gdzlj5kjnz2d2j7bi8s11k7i6540837mnppah18j"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
;; XXX: Do not add debugging symbols, which cause the build to fail. ;; XXX: Do not add debugging symbols, which cause the build to fail.
@ -8079,8 +8043,7 @@ of lore accompanying everything from planets to equipment.")
license:public-domain license:public-domain
license:expat ;edtaa3func.c license:expat ;edtaa3func.c
license:bsd-2 ;distance_field.c license:bsd-2 ;distance_field.c
license:bsd-3 ;perlin.c license:bsd-3)))) ;perlin.c
))))
(define-public frotz-dumb-terminal (define-public frotz-dumb-terminal
(package (package
@ -12246,53 +12209,48 @@ game.") ;thanks to Debian for description
(delete-file-recursively "src/third_party/websocketpp") (delete-file-recursively "src/third_party/websocketpp")
(substitute* "pokerth_lib.pro" (substitute* "pokerth_lib.pro"
(("src/third_party/websocketpp") (("src/third_party/websocketpp")
"")) ""))))
#t)))) (patches (search-patches "pokerth-boost.patch"))))
(build-system qt-build-system) (build-system qt-build-system)
(inputs (inputs
`(("boost" ,boost) (list boost
("curl" ,curl) curl
("gsasl" ,gsasl) gsasl
("libgcrypt" ,libgcrypt) libgcrypt
("libircclient" ,libircclient) libircclient
("protobuf" ,protobuf-2) ; remove package when no longer needed protobuf-2 ;remove package when no longer needed
("qtbase" ,qtbase-5) qtbase-5
("sdl" ,(sdl-union (list sdl sdl-mixer))) (sdl-union (list sdl sdl-mixer))
("sqlite" ,sqlite) sqlite
("tinyxml" ,tinyxml) tinyxml
("websocketpp" ,websocketpp) websocketpp
("zlib" ,zlib))) zlib))
(arguments (arguments
`(#:tests? #f ; No test suite (list
#:phases #:tests? #f ; No test suite
(modify-phases %standard-phases #:phases
(add-after 'unpack 'fix-paths #~(modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-after 'unpack 'fix-paths
(substitute* (find-files "." "\\.pro$") (lambda* (#:key inputs #:allow-other-keys)
(("/opt/gsasl") (substitute* (find-files "." "\\.pro$")
(assoc-ref inputs "gsasl")) (("LIB_DIRS =")
(("\\$\\$\\{PREFIX\\}/include/libircclient") (string-append "LIB_DIRS = "
(search-input-directory inputs "/include/libircclient")) #$(this-package-input "boost") "/lib")))))
(("LIB_DIRS =") (add-after 'unpack 'fix-build
(string-append "LIB_DIRS = " (lambda _
(assoc-ref inputs "boost") "/lib"))) ;; Fixes for Boost versions >= 1.66.
#t)) (substitute* '("src/net/common/clientthread.cpp"
(add-after 'unpack 'fix-build "src/net/serveraccepthelper.h")
(lambda _ (("boost::asio::socket_base::non_blocking_io command\\(true\\);")
;; Fixes for Boost versions >= 1.66. "")
(substitute* '("src/net/common/clientthread.cpp" (("newSock->io_control\\(command\\);")
"src/net/serveraccepthelper.h") "newSock->non_blocking(true);")
(("boost::asio::socket_base::non_blocking_io command\\(true\\);") (("acceptedSocket->io_control\\(command\\);")
"") "acceptedSocket->non_blocking(true);"))))
(("newSock->io_control\\(command\\);") (replace 'configure
"newSock->non_blocking(true);") (lambda _
(("acceptedSocket->io_control\\(command\\);") (invoke "qmake" "pokerth.pro" "CONFIG+=client"
"acceptedSocket->non_blocking(true);")) (string-append "PREFIX=" #$output)))))))
#t))
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(invoke "qmake" "pokerth.pro" "CONFIG+=client"
(string-append "PREFIX=" (assoc-ref outputs "out"))))))))
(home-page "https://www.pokerth.net") (home-page "https://www.pokerth.net")
(synopsis "Texas holdem poker game") (synopsis "Texas holdem poker game")
(description (description

View file

@ -3,6 +3,7 @@
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -20,13 +21,19 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages gawk) (define-module (gnu packages gawk)
#:use-module (guix licenses) #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages gcc)
#:use-module (gnu packages libsigsegv) #:use-module (gnu packages libsigsegv)
#:use-module (gnu packages multiprecision)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)) #:use-module (guix build-system gnu))
(define-public gawk (define-public gawk
@ -84,7 +91,43 @@
language for the easy manipulation of formatted text, such as tables of data. language for the easy manipulation of formatted text, such as tables of data.
Gawk features many extensions beyond the traditional implementation, Gawk features many extensions beyond the traditional implementation,
including network access, sorting, and large libraries.") including network access, sorting, and large libraries.")
(license gpl3+))) (license license:gpl3+)))
;; Separate from gawk to facilitate bootstrapping.
(define-public gawk-mpfr
(package/inherit gawk
(name "gawk-mpfr")
(inputs
(modify-inputs (package-inputs gawk)
(prepend mpfr)))))
;; Suffixed with -next because, similarly to Emacs, development versions are
;; numbered x.y.60+z, and also there are no tagged versions of egawk yet.
;; (However, though egawk's --version lists 5.1.60, it is actually forked from
;; a development version of gawk 5.1.1.)
(define-public egawk-next
(let ((commit "f00e74ffc73f6ba6fe74fb7a26319770b8c3792c")
(revision "0"))
(package
(inherit gawk-mpfr)
(name "egawk-next")
(version (git-version "5.1.60" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://www.kylheku.com/git/egawk")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0bmfbw6k1aiyiardnk7ha5zlpkvavj013mm4n7wwj2vdcgrs6p1f"))))
(home-page "https://www.kylheku.com/cgit/egawk/")
(synopsis "Enhanced GNU Awk")
(description
"@command{egawk} is Enhanced GNU Awk. It is a fork of GNU Awk with
some enhancements designed and implemented by Kaz Kylheku. In particular,
Enhanced GNU Awk provides the @code{@@let} statement for declaring
block-scoped lexical variables."))))
(define-public mawk (define-public mawk
(package (package
@ -111,4 +154,85 @@ including network access, sorting, and large libraries.")
"@command{mawk} is an interpreter for the Awk programming language. "@command{mawk} is an interpreter for the Awk programming language.
This version aims to be smaller and faster than GNU Awk, at the expense This version aims to be smaller and faster than GNU Awk, at the expense
of fewer features and extensions.") of fewer features and extensions.")
(license gpl2))) ;version 2 only (license license:gpl2))) ;version 2 only
(define-public cppawk
(package
(name "cppawk")
(version "20220703")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://www.kylheku.com/git/cppawk")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0b09757q81sz4gn62k3mv5bgllyb2v5m64346s8fc99mqqif70cx"))))
(build-system copy-build-system)
(arguments
`(#:install-plan '(("bin/cppawk" "bin/cppawk")
("share/cppawk/include" "share/cppawk/include")
("./" "share/man/man1" #:include-regexp (".*\\.1$")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda _
(substitute* "bin/cppawk"
(("/bin/bash") (which "bash"))
(("dirname") (which "dirname"))
(("mktemp") (which "mktemp"))
;; Extra space to prevent matching Awk's printf.
(("printf ") (string-append (which "printf") " "))
(("rm -f") (string-append (which "rm") " -f"))
(("prepro=cpp") (string-append "prepro=" (which "cpp")))
(("sed -e") (string-append (which "sed") " -e")))))
(add-after 'fix-paths 'fix-awk-paths
(lambda _
(substitute* "bin/cppawk"
(("awk=gawk") (string-append "awk=" (which "gawk")))
(("awk '") (string-append (which "gawk") " '")))))
(add-after 'build 'check
(lambda _
(invoke "./runtests"))))))
(native-inputs
;; For tests
(list mawk))
(inputs
(list coreutils ; For dirname, mktemp, printf, rm
gawk-mpfr ; Default variant, but supports others
gcc ; For cpp
sed))
(home-page "https://www.kylheku.com/cgit/cppawk/")
(synopsis "Wrapper script that adds C preprocessing to Awk")
(description
"@command{cppawk} is a shell script that invokes the C preprocessor
(@command{cpp}) on Awk code and calls Awk (by default GNU Awk) on the result.
@command{cppawk} understands the basic Awk options like @option{-F} and
@option{-v}, and also understands common @command{cpp} options like
@option{-I} and @option{-Dmacro=value}.
@command{cppawk} has no dependencies beyond Awk, @command{cpp}, @command{sed}
and some GNU core utilities (including @command{printf}). Preprocessed
programs can be captured and transferred to systems that have Awk but not
@command{cpp} or @command{cppawk}.")
(license license:bsd-2)))
(define-public cppawk-egawk
(package/inherit cppawk
(name "cppawk-egawk")
(arguments
(substitute-keyword-arguments (package-arguments cppawk)
((#:phases phases)
`(modify-phases ,phases
(replace 'fix-awk-paths
(lambda _
(substitute* "bin/cppawk"
(("awk=gawk") (string-append "awk=" (which "egawk")))
(("awk '") (string-append (which "egawk") " '")))))))))
(inputs
(modify-inputs (package-inputs cppawk)
(delete "gawk-mpfr")
(prepend egawk-next)))
(synopsis "cppawk that calls Enhanced GNU Awk by default")))

View file

@ -46,6 +46,7 @@
#:use-module (guix build-system qt) #:use-module (guix build-system qt)
#:use-module (guix build-system scons) #:use-module (guix build-system scons)
#:use-module (guix build-system r) #:use-module (guix build-system r)
#:use-module (guix gexp)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix svn-download) #:use-module (guix svn-download)
@ -121,6 +122,35 @@
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (gnu packages xorg)) #:use-module (gnu packages xorg))
(define-public cdo
(package
(name "cdo")
(version "2.0.5")
(source (origin
(method url-fetch)
(uri (string-append
"https://code.mpimet.mpg.de/attachments/download/26823/cdo-"
version ".tar.gz"))
(sha256
(base32
"1khdbd5cmnn7qm6hcqg4md5wbq14fs6brrns8b3g18diqgqvpvpd"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
#~(list (string-append "--with-netcdf="
#$(this-package-input "netcdf")))))
(inputs
(list netcdf))
(native-inputs
(list pkg-config))
(home-page "https://code.mpimet.mpg.de/projects/cdo")
(synopsis "Climate data operators")
(description "@acronym{CDO, Climate Data Operators} is a collection of command-line
operators to manipulate and analyse climate and NWP model data. Supported
data formats are GRIB 1/2, netCDF 3/4, SERVICE, EXTRA and IEG. There are more
than 600 operators available.")
(license license:bsd-3)))
(define-public memphis (define-public memphis
(package (package
(name "memphis") (name "memphis")
@ -186,7 +216,7 @@ OpenStreetMap written in C using eXpat, Cairo and GLib.")
(define-public geos (define-public geos
(package (package
(name "geos") (name "geos")
(version "3.8.1") (version "3.10.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://download.osgeo.org/geos/geos-" (uri (string-append "http://download.osgeo.org/geos/geos-"
@ -194,8 +224,8 @@ OpenStreetMap written in C using eXpat, Cairo and GLib.")
".tar.bz2")) ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1xqpmr10xi0n9sj47fbwc89qb0yr9imh4ybk0jsxpffy111syn22")))) "05apyh6dvv15fax4xvxa0kr622h4y08w9p3274mlqsrqmjcwbfsh"))))
(build-system gnu-build-system) (build-system cmake-build-system)
(arguments `(#:phases (arguments `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after (add-after
@ -203,11 +233,10 @@ OpenStreetMap written in C using eXpat, Cairo and GLib.")
(lambda _ (lambda _
(substitute* '("tests/xmltester/testrunner.sh" (substitute* '("tests/xmltester/testrunner.sh"
"tests/geostest/testrunner.sh") "tests/geostest/testrunner.sh")
(("/bin/sh") (which "sh"))) (("/bin/sh") (which "sh"))))))))
#t)))))
(inputs (inputs
(list glib)) (list glib))
(home-page "https://geos.osgeo.org/") (home-page "https://libgeos.org/")
(synopsis "Geometry Engine for Geographic Information Systems") (synopsis "Geometry Engine for Geographic Information Systems")
(description (description
"GEOS provides a spatial object model and fundamental geometric "GEOS provides a spatial object model and fundamental geometric
@ -312,18 +341,14 @@ and driving.")
(define-public libgeotiff (define-public libgeotiff
(package (package
(name "libgeotiff") (name "libgeotiff")
(version "1.5.1") (version "1.7.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-" (uri (string-append "http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-"
version ".tar.gz")) version ".tar.gz"))
(patches (search-patches
;; See libgeotiff 1.5.1 issue
;; https://github.com/OSGeo/libgeotiff/issues/22
"libgeotiff-adapt-test-script-for-proj-6.2.patch"))
(sha256 (sha256
(base32 "0b31mlzcv5b1y7jdvb7p0pa3xradrg3x5g32ym911lbhq4rrgsgr")) (base32 "1mjmgv48x51ppax5dnb6lq7z600czxll53bx6jbzqwd4m93i7aq5"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -809,7 +834,7 @@ street bearings/orientations, and speed/travel time.")
(define-public mapnik (define-public mapnik
(package (package
(name "mapnik") (name "mapnik")
(version "3.0.18") (version "3.1.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -817,7 +842,7 @@ street bearings/orientations, and speed/travel time.")
version "/mapnik-v" version ".tar.bz2")) version "/mapnik-v" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"06frcikaj2mgz3abfk5h0z4j3hbksi0zikwjngbjv4p5f3pwxf8q")))) "0qb2irykja5qhr9apz9r230pcxap9v3j85fi98mj2xd9sa163ms3"))))
(build-system scons-build-system) (build-system scons-build-system)
(inputs (inputs
(list boost (list boost
@ -834,10 +859,9 @@ street bearings/orientations, and speed/travel time.")
sqlite sqlite
zlib)) zlib))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config postgresql))
(arguments (arguments
`(#:scons ,scons-python2 `(#:scons-flags
#:scons-flags
(list "CC=gcc" (list "CC=gcc"
(string-append "PREFIX=" %output) (string-append "PREFIX=" %output)
(string-append "CUSTOM_LDFLAGS=-Wl,-rpath=" %output "/lib")))) (string-append "CUSTOM_LDFLAGS=-Wl,-rpath=" %output "/lib"))))
@ -939,29 +963,12 @@ development.")
"frmts/gtiff/libgeotiff" "frmts/gtiff/libgeotiff"
"frmts/zlib" "frmts/zlib"
"ogr/ogrsf_frmts/geojson/libjson")))))) "ogr/ogrsf_frmts/geojson/libjson"))))))
(build-system gnu-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f `(#:tests? #f
#:configure-flags #:configure-flags
(let-syntax ((with (syntax-rules () (list "-DGDAL_USE_INTERNAL_LIBS=WHEN_NO_EXTERNAL"
((_ option input) "-DGDAL_USE_JPEG12_INTERNAL=OFF")))
(string-append option "="
(assoc-ref %build-inputs input))))))
(list
;; TODO: --with-pcidsk, --with-pcraster
(with "--with-expat" "expat")
(with "--with-freexl" "freexl")
(with "--with-geotiff" "libgeotiff")
(with "--with-gif" "giflib")
(with "--with-jpeg" "libjpeg-turbo")
(with "--with-libjson-c" "json-c")
(with "--with-libtiff" "libtiff")
(with "--with-libz" "zlib")
(with "--with-png" "libpng")
(with "--with-sqlite3" "sqlite")
(with "--with-webp" "libwebp")
"--without-jpeg12"
"--with-pcre"))))
(inputs (inputs
(list curl (list curl
expat expat
@ -976,9 +983,10 @@ development.")
libwebp libwebp
netcdf netcdf
openssl openssl
pcre pcre2
postgresql ; libpq postgresql ; libpq
proj proj
qhull
sqlite sqlite
zlib)) zlib))
(native-inputs (native-inputs
@ -2200,7 +2208,7 @@ orienteering sport.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public grass (define-public grass
(let* ((version "7.8.6") (let* ((version "7.8.7")
(majorminor (string-join (list-head (string-split version #\.) 2) "")) (majorminor (string-join (list-head (string-split version #\.) 2) ""))
(grassxx (string-append "grass" majorminor))) (grassxx (string-append "grass" majorminor)))
(package (package
@ -2212,7 +2220,7 @@ orienteering sport.")
(uri (string-append "https://grass.osgeo.org/" grassxx (uri (string-append "https://grass.osgeo.org/" grassxx
"/source/grass-" version ".tar.gz")) "/source/grass-" version ".tar.gz"))
(sha256 (sha256
(base32 "1glk74ly3j0x8ymn4jp73s6y8qv7p3g5nv4gvb6l9qqplyq1fpnq")))) (base32 "0sbz0ba9p963phvd0gmvfqq1fg4ixpipzcjbf20ys86qavjppzsg"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("bzip2" ,bzip2) `(("bzip2" ,bzip2)
@ -2323,7 +2331,7 @@ visualization.")
(define-public saga (define-public saga
(package (package
(name "saga") (name "saga")
(version "7.9.0") (version "8.2.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2331,8 +2339,8 @@ visualization.")
(version-major version) "/SAGA%20-%20" version (version-major version) "/SAGA%20-%20" version
"/saga-" version ".tar.gz")) "/saga-" version ".tar.gz"))
(sha256 (sha256
(base32 "1n051yxxkylly0k9rlkx2ih3j2lf9d4csg00sm7161r7nhjvggd1")))) (base32 "008izjs6gvj09abxf16ssl1xy0ay3ljq4jswbggp6wiiq459minv"))))
(build-system gnu-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
(list pkg-config swig)) (list pkg-config swig))
(inputs (inputs
@ -2352,7 +2360,12 @@ visualization.")
vigra vigra
wxwidgets)) wxwidgets))
(arguments (arguments
'(#:configure-flags '("--enable-python"))) '(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'configure 'cd-to-source-dir
(lambda _
(chdir "saga-gis"))))))
(synopsis "System for Automated Geoscientific Analyses") (synopsis "System for Automated Geoscientific Analyses")
(description (description
"SAGA (System for Automated Geoscientific Analyses) is a Geographic "SAGA (System for Automated Geoscientific Analyses) is a Geographic
@ -2473,12 +2486,14 @@ growing set of geoscientific methods.")
"PyQgsLayoutHtml" "PyQgsLayoutHtml"
"PyQgsLayoutLegend" "PyQgsLayoutLegend"
"PyQgsLayoutMapGrid" "PyQgsLayoutMapGrid"
"PyQgsMapClippingUtils"
"PyQgsMapLayer" "PyQgsMapLayer"
"PyQgsMetadataBase" "PyQgsMetadataBase"
"PyQgsOGRProvider" "PyQgsOGRProvider"
"PyQgsOGRProviderGpkg" "PyQgsOGRProviderGpkg"
"PyQgsOapifProvider" "PyQgsOapifProvider"
"PyQgsPalLabelingLayout" "PyQgsPalLabelingLayout"
"PyQgsProcessingInPlace"
"PyQgsProject" "PyQgsProject"
"PyQgsProviderConnectionGpkg" "PyQgsProviderConnectionGpkg"
"PyQgsProviderConnectionPostgres" "PyQgsProviderConnectionPostgres"
@ -2515,6 +2530,7 @@ growing set of geoscientific methods.")
"qgis_layoutlabeltest" "qgis_layoutlabeltest"
"qgis_layoutmanualtabletest" "qgis_layoutmanualtabletest"
"qgis_layoutmapgridtest" "qgis_layoutmapgridtest"
"qgis_layoutmapoverviewtest"
"qgis_layoutmaptest" "qgis_layoutmaptest"
"qgis_layoutmultiframetest" "qgis_layoutmultiframetest"
"qgis_layoutpicturetest" "qgis_layoutpicturetest"
@ -2522,6 +2538,7 @@ growing set of geoscientific methods.")
"qgis_layouttest" "qgis_layouttest"
"qgis_mapdevicepixelratiotest" "qgis_mapdevicepixelratiotest"
"qgis_maprendererjobtest" "qgis_maprendererjobtest"
"qgis_meshcontourstest"
"qgis_ogrproviderguitest" "qgis_ogrproviderguitest"
"qgis_painteffecttest" "qgis_painteffecttest"
"qgis_pallabelingtest" "qgis_pallabelingtest"
@ -2535,7 +2552,8 @@ growing set of geoscientific methods.")
"qgis_svgmarkertest" "qgis_svgmarkertest"
"qgis_taskmanagertest" "qgis_taskmanagertest"
"qgis_wcsprovidertest" "qgis_wcsprovidertest"
"qgis_ziplayertest") "qgis_ziplayertest"
"TestQgsRandomMarkerSymbolLayer")
"|"))))) "|")))))
(add-after 'install 'wrap-python (add-after 'install 'wrap-python
(assoc-ref python:%standard-phases 'wrap)) (assoc-ref python:%standard-phases 'wrap))

View file

@ -68,6 +68,7 @@
#:use-module (guix build-system waf) #:use-module (guix build-system waf)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:use-module ((srfi srfi-1) #:hide (zip))) #:use-module ((srfi srfi-1) #:hide (zip)))
@ -75,15 +76,22 @@
(define-public glu (define-public glu
(package (package
(name "glu") (name "glu")
(version "9.0.1") (version "9.0.2")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append "ftp://ftp.freedesktop.org/pub/mesa/glu/glu-" (uri (git-reference
version ".tar.gz")) (url "https://gitlab.freedesktop.org/mesa/glu")
(commit (string-append "glu-" version))))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1xqhk9bn10nbvffw3r4p4rjslwz1l7gaycc0x2pqkr2irp7q9x7n")))) "1khxfidyglpx4yd8f3xvrj05ah823cz1ygcszhcaa4w7h9kd1lbr"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs
(list pkg-config
autoconf
automake
libtool))
(propagated-inputs (propagated-inputs
(list mesa)) ; according to glu.pc (list mesa)) ; according to glu.pc
(home-page "http://www.opengl.org/archives/resources/faq/technical/glu.htm") (home-page "http://www.opengl.org/archives/resources/faq/technical/glu.htm")
@ -104,16 +112,15 @@ as ASCII text.")
(define-public freeglut (define-public freeglut
(package (package
(name "freeglut") (name "freeglut")
(version "3.2.1") (version "3.2.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"mirror://sourceforge/freeglut/freeglut/" "https://github.com/FreeGLUTProject/freeglut/releases"
version "/freeglut-" version ".tar.gz")) "/download/v" version "/freeglut-" version ".tar.gz"))
(patches (search-patches "freeglut-gcc-compat.patch"))
(sha256 (sha256
(base32 (base32
"0s6sk49q8ijgbsrrryb7dzqx2fa744jhx1wck5cz5jia2010w06l")))) "0l3s57zw51fy3mn5qfdm4z775kfhflgxppanaxmskfzh5l44m565"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:tests? #f ;no test target '(#:tests? #f ;no test target
@ -249,14 +256,14 @@ also known as DXTn or DXTC) for Mesa.")
(package (package
(inherit libva) (inherit libva)
(name "libva-without-mesa") (name "libva-without-mesa")
(inputs `(,@(fold alist-delete (package-inputs libva) (inputs (fold alist-delete (package-inputs libva)
'("mesa" "wayland")))) '("mesa" "wayland")))
(arguments (arguments
(strip-keyword-arguments (strip-keyword-arguments
'(#:make-flags) '(#:make-flags)
(substitute-keyword-arguments (package-arguments libva) (substitute-keyword-arguments (package-arguments libva)
((#:configure-flags flags) ((#:configure-flags flags)
'(list "--disable-glx" "--disable-egl")))))))) '(list "--disable-glx"))))))))
(define-public mesa (define-public mesa
(package (package
@ -701,37 +708,31 @@ OpenGL graphics API.")
(define-public libepoxy (define-public libepoxy
(package (package
(name "libepoxy") (name "libepoxy")
(version "1.5.5") (version "1.5.10")
(home-page "https://github.com/anholt/libepoxy")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append (uri (git-reference (url home-page) (commit version)))
"https://github.com/anholt/libepoxy/releases/download/" (file-name (git-file-name name version))
version "/libepoxy-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0mh5bdgqfd8m4wj6jlvn4ac94sgfa8r6ish75ciwrhdw47dn65i6")))) "0jw02bzdwynyrwsn5rhcacv92h9xx928j3xp436f8gdnwlyb5641"))))
(arguments (arguments
`(#:phases (list
(modify-phases %standard-phases #:phases
(delete 'bootstrap) #~(modify-phases %standard-phases
(add-before (add-before 'configure 'patch-paths
'configure 'patch-paths (lambda* (#:key inputs #:allow-other-keys)
(lambda* (#:key inputs #:allow-other-keys) (let ((mesa (dirname (search-input-file inputs "lib/libGL.so"))))
(let ((python (assoc-ref inputs "python")) (substitute* (find-files "." "\\.[ch]$")
(mesa (assoc-ref inputs "mesa"))) (("libGL.so.1") (string-append mesa "/libGL.so.1"))
(substitute* "src/gen_dispatch.py" (("libEGL.so.1") (string-append mesa "/libEGL.so.1")))))))))
(("/usr/bin/env python") python))
(substitute* (find-files "." "\\.[ch]$")
(("libGL.so.1") (string-append mesa "/lib/libGL.so.1"))
(("libEGL.so.1") (string-append mesa "/lib/libEGL.so.1")))
#t))))))
(build-system meson-build-system) (build-system meson-build-system)
(native-inputs (native-inputs
(list pkg-config python)) (list pkg-config python))
(propagated-inputs (propagated-inputs
;; epoxy.pc: 'Requires.private: gl egl' ;; epoxy.pc: 'Requires.private: gl egl'
(list mesa)) (list mesa))
(home-page "https://github.com/anholt/libepoxy/")
(synopsis "Library for handling OpenGL function pointer management") (synopsis "Library for handling OpenGL function pointer management")
(description (description
"A library for handling OpenGL function pointer management.") "A library for handling OpenGL function pointer management.")

View file

@ -614,7 +614,7 @@ The intltool collection can be used to do these things:
(lambda _ (lambda _
(wrap-program (string-append #$output "/bin/itstool") (wrap-program (string-append #$output "/bin/itstool")
`("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH"))))))))) `("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")))))))))
(home-page "http://www.itstool.org") (home-page "https://itstool.org")
(synopsis "Tool to translate XML documents with PO files") (synopsis "Tool to translate XML documents with PO files")
(description (description
"ITS Tool allows you to translate your XML documents with PO files, using "ITS Tool allows you to translate your XML documents with PO files, using

View file

@ -1109,7 +1109,7 @@ of windows.")
(list `(,glib "bin") ; for glib-compile-resources (list `(,glib "bin") ; for glib-compile-resources
gnome-shell gnome-shell
gtk+ gtk+
inkscape inkscape/stable
optipng optipng
pkg-config pkg-config
sassc/libsass-3.5)) sassc/libsass-3.5))

View file

@ -11,7 +11,7 @@
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2018, 2021 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015, 2016, 2017, 2018, 2021 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 David Thompson <davet@gnu.org> ;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015-2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018 Rene Saavedra <pacoon@protonmail.com> ;;; Copyright © 2016, 2017, 2018 Rene Saavedra <pacoon@protonmail.com>
;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net> ;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
;;; Copyright © 2016, 2017, 2019 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016, 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
@ -1584,15 +1584,15 @@ sharing to the masses.")
(define-public sushi (define-public sushi
(package (package
(name "sushi") (name "sushi")
(version "3.38.1") (version "42.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/" (version-major version) "/"
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1sc8i0vrw6bn43rklnwp2fl1gq0r0xfd3bszcqxd0a2mh46d3rpk")))) "0848gidl0ab8i5pa70mv8jzchmd9kqa8sn1lg977hyasyixdpn25"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t
@ -1608,27 +1608,28 @@ sharing to the masses.")
`("GI_TYPELIB_PATH" suffix `("GI_TYPELIB_PATH" suffix
(,(getenv "GI_TYPELIB_PATH")))))))))) (,(getenv "GI_TYPELIB_PATH"))))))))))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") (list `(,glib "bin")
("gettext" ,gettext-minimal) gettext-minimal
("gobject-introspection" ,gobject-introspection) gobject-introspection
("pkg-config" ,pkg-config))) pkg-config))
(inputs (inputs
`(("clutter" ,clutter) (list bash-minimal
("clutter-gst" ,clutter-gst) clutter
("clutter-gtk" ,clutter-gtk) clutter-gst
("evince" ,evince) ; For file previewing. clutter-gtk
("freetype" ,freetype) evince ; For file previewing.
("gdk-pixbuf" ,gdk-pixbuf) freetype
("gjs" ,gjs) gdk-pixbuf
("gst-plugins-base" ,gst-plugins-base) gjs
("gstreamer" ,gstreamer) gst-plugins-base
("gtksourceview" ,gtksourceview) gstreamer
("harfbuzz" ,harfbuzz) gtksourceview
("libepoxy" ,libepoxy) harfbuzz
("libmusicbrainz" ,libmusicbrainz) libepoxy
("libxml2" ,libxml2) libmusicbrainz
("neon" ,neon) libxml2
("webkitgtk" ,webkitgtk-with-libsoup2))) neon
webkitgtk))
(synopsis "File previewer for the GNOME desktop") (synopsis "File previewer for the GNOME desktop")
(description "Sushi is a DBus-activated service that allows applications (description "Sushi is a DBus-activated service that allows applications
to preview files on the GNOME desktop.") to preview files on the GNOME desktop.")
@ -1765,14 +1766,14 @@ configuration files for the GNOME menu, as well as a simple menu editor.")
(define-public deja-dup (define-public deja-dup
(package (package
(name "deja-dup") (name "deja-dup")
(version "42.8") (version "43.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://gitlab.gnome.org/World/deja-dup/-/archive/" (uri (string-append "https://gitlab.gnome.org/World/deja-dup/-/archive/"
version "/deja-dup-" version ".tar.bz2")) version "/deja-dup-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0d1jnlxpk52x56aqxz1g2xb4y4sm24h08p2di8mc1k8n8b52rpi4")))) "1mr2g009w0zm5rj8dg1k77c7zdwylih2yszm8vh8wkw6al6bzfh3"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t
@ -1786,7 +1787,7 @@ configuration files for the GNOME menu, as well as a simple menu editor.")
(add-after 'unpack 'patch-paths (add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((python (assoc-ref inputs "python"))) (let ((python (assoc-ref inputs "python")))
(substitute* '("libdeja/tools/duplicity/DuplicityInstance.vala" (substitute* '("libdeja/duplicity/DuplicityInstance.vala"
"libdeja/tests/scripts/instance-error.test") "libdeja/tests/scripts/instance-error.test")
(("/bin/rm") (("/bin/rm")
(which "rm"))) (which "rm")))
@ -1801,14 +1802,7 @@ configuration files for the GNOME menu, as well as a simple menu editor.")
(let ((libgpg-error (assoc-ref inputs "libgpg-error"))) (let ((libgpg-error (assoc-ref inputs "libgpg-error")))
(substitute* "meson.build" (substitute* "meson.build"
(("(gpgerror_libs = ).*" _ var) (("(gpgerror_libs = ).*" _ var)
(format #f "~a '-L~a/lib -lgpg-error'\n" var libgpg-error)))) (format #f "~a '-L~a/lib -lgpg-error'\n" var libgpg-error))))))
#t))
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(lambda _
(substitute* "data/post-install.sh"
(("gtk-update-icon-cache") "true"))
#t))
(add-after 'install 'wrap-program (add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
;; Add duplicity to the search path ;; Add duplicity to the search path
@ -1817,28 +1811,30 @@ configuration files for the GNOME menu, as well as a simple menu editor.")
`("PATH" ":" prefix `("PATH" ":" prefix
(,(string-append (assoc-ref inputs "duplicity") "/bin"))))))))) (,(string-append (assoc-ref inputs "duplicity") "/bin")))))))))
(inputs (inputs
`(("bash-minimal" ,bash-minimal) (list bash-minimal
("duplicity" ,duplicity) duplicity
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) gsettings-desktop-schemas
("gtk+" ,gtk+) gtk
("json-glib" ,json-glib) json-glib
("libgpg-error" ,libgpg-error) libadwaita
("libnotify" ,libnotify) libgpg-error
("libsecret" ,libsecret) libnotify
("libsoup" ,libsoup-minimal-2) libsecret
("libhandy" ,libhandy) libsoup
("packagekit" ,packagekit) libhandy
("python" ,python) packagekit
("python-pygobject" ,python-pygobject))) python
python-pygobject))
(native-inputs (native-inputs
`(("appstream-glib" ,appstream-glib) (list appstream-glib
("desktop-file-utils" ,desktop-file-utils) desktop-file-utils
("gettext" ,gettext-minimal) gettext-minimal
("glib" ,glib "bin") ; for glib-compile-schemas. `(,glib "bin") ;for glib-compile-schemas
("gobject-introspection" ,gobject-introspection) gobject-introspection
("itstool" ,itstool) `(,gtk "bin") ;for gtk-update-icon-cache
("pkg-config" ,pkg-config) itstool
("vala" ,vala))) pkg-config
vala))
(home-page "https://wiki.gnome.org/Apps/DejaDup") (home-page "https://wiki.gnome.org/Apps/DejaDup")
(synopsis "Simple backup tool, for regular encrypted backups") (synopsis "Simple backup tool, for regular encrypted backups")
(description (description
@ -4377,6 +4373,44 @@ the GObject type system and has additional code generation routines that make
targeting the GNOME stack simple.") targeting the GNOME stack simple.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public vala-next
(package
(inherit vala)
(version "0.56.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/vala/"
(version-major+minor version) "/"
"vala-" version ".tar.xz"))
(sha256
(base32
"0k0jj3xwjq222x0hbqqy5bykhgk1f1wsb85bqcdgsnbqn6dn3jb6"))))
(arguments
(list
#:configure-flags #~(list "CC=gcc" "--enable-coverage")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'use-gcc-by-default
(lambda _
(substitute* "codegen/valaccodecompiler.c"
(("cc_command = \"cc\"")
"cc_command = \"gcc\""))))
(add-after 'unpack 'patch-docbook-xml
(lambda* (#:key inputs #:allow-other-keys)
(with-directory-excursion "doc/manual"
(substitute* '("manual.xml" "version.xml.in")
(("http://www.oasis-open.org/docbook/xml/4.4/")
(search-input-directory inputs "xml/dtd/docbook"))))))
(add-before 'check 'pre-check
(lambda _
(substitute* "valadoc/tests/libvaladoc/tests-extra-environment.sh"
(("export PKG_CONFIG_PATH=" m)
(string-append m "$PKG_CONFIG_PATH:")))))
;; Wrapping the binaries breaks vala's behavior adaptations based on
;; the file name of the program executed (vala: compile and execute,
;; valac: compile into a binary).
(delete 'glib-or-gtk-wrap))))))
;;; An older variant kept to build libsoup-minimal-2. ;;; An older variant kept to build libsoup-minimal-2.
(define-public vala-0.52 (define-public vala-0.52
(package/inherit vala (package/inherit vala
@ -4393,7 +4427,7 @@ targeting the GNOME stack simple.")
(define-public vte (define-public vte
(package (package
(name "vte") (name "vte")
(version "0.64.2") (version "0.68.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/vte/" (uri (string-append "mirror://gnome/sources/vte/"
@ -4401,21 +4435,20 @@ targeting the GNOME stack simple.")
"vte-" version ".tar.xz")) "vte-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"063ys3330cvhbz1dln9irhciavb2prw098lvhpcc2rx6cl5q4g1b")))) "0j8pvn225ybzx9p33ill838bzp8kkdn28383h0vs65m2kiwd9rqk"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:configure-flags (list #:configure-flags #~(list "-Dvapi=true"
'("-Dvapi=true" "-D_systemd=false")))
"-D_systemd=false")))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) (list pkg-config
("gettext" ,gettext-minimal) gettext-minimal
("vala" ,vala) vala
("gobject-introspection" ,gobject-introspection) gobject-introspection
("glib" ,glib "bin") ; for glib-genmarshal, etc. `(,glib "bin") ; for glib-genmarshal, etc.
("gperf" ,gperf) gperf
("python" ,python) python
("xmllint" ,libxml2))) libxml2))
(propagated-inputs (propagated-inputs
(list gtk+ ; required by vte-2.91.pc (list gtk+ ; required by vte-2.91.pc
gnutls ; ditto gnutls ; ditto
@ -6121,25 +6154,25 @@ discovery protocols.")
(define-public totem (define-public totem
(package (package
(name "totem") (name "totem")
(version "3.38.1") (version "42.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/totem/" (uri (string-append "mirror://gnome/sources/totem/"
(version-major+minor version) "/" (version-major version) "/"
"totem-" version ".tar.xz")) "totem-" version ".tar.xz"))
(sha256 (sha256
(base32 "02510lvzvxvmpcs64k6sqix8ysl7sihhhwvp0vmfv7521ryczylg")))) (base32 "1az6ay7zhz2naqrzcfldx1yv2ylw1yjx76g3mqrqppwmvcflkw2a"))))
(build-system meson-build-system) (build-system meson-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) (list pkg-config
("desktop-file-utils" ,desktop-file-utils) desktop-file-utils
("gettext" ,gettext-minimal) gettext-minimal
("gobject-introspection" ,gobject-introspection) gobject-introspection
("glib:bin" ,glib "bin") ;for 'glib-mkenums' `(,glib "bin") ;for 'glib-mkenums'
("itstool" ,itstool) itstool
("xmllint" ,libxml2) libxml2
("xorg-server" ,xorg-server-for-tests))) xorg-server-for-tests))
(propagated-inputs (propagated-inputs
(list dconf)) (list dconf))
(inputs (inputs
@ -6148,9 +6181,6 @@ discovery protocols.")
atk atk
cairo cairo
dbus-glib dbus-glib
clutter
clutter-gtk
clutter-gst
xorgproto xorgproto
libxxf86vm libxxf86vm
libxtst libxtst
@ -6159,7 +6189,7 @@ discovery protocols.")
libsoup libsoup
libpeas libpeas
librsvg librsvg
lirc libhandy
gnome-desktop gnome-desktop
gstreamer gstreamer
gst-plugins-base gst-plugins-base
@ -6173,47 +6203,41 @@ discovery protocols.")
grilo-plugins grilo-plugins
vala)) vala))
(arguments (arguments
`(#:glib-or-gtk? #t (list
#:glib-or-gtk? #t
;; Disable automatic GStreamer plugin installation via PackageKit and ;; Disable automatic GStreamer plugin installation via PackageKit and
;; all that. ;; all that.
#:configure-flags '("-D" "enable-easy-codec-installation=no" #:configure-flags #~(list "-Denable-easy-codec-installation=no"
;; Do not build .a files for the plugins, it's
;; Do not build .a files for the plugins, it's ;; completely useless. This saves 2 MiB.
;; completely useless. This saves 2 MiB. "--default-library" "shared")
"--default-library" "shared") #:phases
#:phases #~(modify-phases %standard-phases
(modify-phases %standard-phases (add-after 'unpack 'skip-gtk-update-icon-cache
(add-after 'unpack 'skip-gtk-update-icon-cache ;; Don't create 'icon-theme.cache'.
;; Don't create 'icon-theme.cache'. (lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))))
(add-before 'install 'disable-cache-generation
(lambda _ (lambda _
(substitute* "meson_post_install.py" (setenv "DESTDIR" "/")))
(("gtk-update-icon-cache") "true")) (add-before 'check 'pre-check
#t)) (lambda _
(add-before ;; Tests require a running X server.
'install 'disable-cache-generation (system "Xvfb :1 &")
(lambda _ (setenv "DISPLAY" ":1")))
(setenv "DESTDIR" "/") (add-after 'install 'wrap-totem
#t)) (lambda* (#:key inputs outputs #:allow-other-keys)
(add-before (let ((out (assoc-ref outputs "out"))
'check 'pre-check (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
(lambda _ (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
;; Tests require a running X server. (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
(system "Xvfb :1 &") (wrap-program (string-append out "/bin/totem")
(setenv "DISPLAY" ":1") `("GI_TYPELIB_PATH" ":" suffix (,gi-typelib-path))
#t)) `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
(add-after `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path)))
'install 'wrap-totem (wrap-program (string-append out "/bin/totem-video-thumbnailer")
(lambda* (#:key inputs outputs #:allow-other-keys) `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)))))))))
(let ((out (assoc-ref outputs "out"))
(gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
(grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
(wrap-program (string-append out "/bin/totem")
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
`("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path)))
(wrap-program (string-append out "/bin/totem-video-thumbnailer")
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))))
#t)))))
(home-page "https://wiki.gnome.org/Apps/Videos") (home-page "https://wiki.gnome.org/Apps/Videos")
(synopsis "Simple media player for GNOME based on GStreamer") (synopsis "Simple media player for GNOME based on GStreamer")
(description "Totem is a simple yet featureful media player for GNOME (description "Totem is a simple yet featureful media player for GNOME
@ -6459,7 +6483,7 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.")
(define-public gvfs (define-public gvfs
(package (package
(name "gvfs") (name "gvfs")
(version "1.48.1") (version "1.50.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/gvfs/" (uri (string-append "mirror://gnome/sources/gvfs/"
@ -6467,51 +6491,51 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.")
"gvfs-" version ".tar.xz")) "gvfs-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1hlxl6368h6nyqp1888szxs9hnpcw98k3h23dgqi29xd38klzsmj")))) "0pmc0vda1ksm9l7v64h4bm8qnv16amb7nifgy0882hzg2n62pmq3"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t (list #:glib-or-gtk? #t
#:configure-flags #:configure-flags
(list "-Dsystemduserunitdir=no" #~(list "-Dsystemduserunitdir=no"
"-Dtmpfilesdir=no" "-Dtmpfilesdir=no"
;; Otherwise, the RUNPATH will lack the final path component. ;; Otherwise, the RUNPATH will lack the final path component.
(string-append "-Dc_link_args=-Wl,-rpath=" (string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib/gvfs")))) #$output "/lib/gvfs"))))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ;for glib-genmarshal, etc. (list `(,glib "bin") ;for glib-genmarshal, etc.
("gettext" ,gettext-minimal) gettext-minimal
("gtk-doc" ,gtk-doc/stable) gtk-doc/stable
("pkg-config" ,pkg-config) pkg-config
("xsltproc" ,libxslt))) libxslt))
(inputs (inputs
`(("avahi" ,avahi) (list avahi
("docbook-xml" ,docbook-xml-4.2) docbook-xml-4.2
("docbook-xsl" ,docbook-xsl) docbook-xsl
("dbus" ,dbus) dbus
("elogind" ,elogind) elogind
("fuse" ,fuse-3) fuse-3
("gcr" ,gcr) gcr
("glib" ,glib) glib
("gnome-online-accounts" ,gnome-online-accounts) gnome-online-accounts
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) gsettings-desktop-schemas
("libarchive" ,libarchive) libarchive
("libbluray" ,libbluray) libbluray
("libcap" ,libcap) libcap
("libcdio-paranoia" ,libcdio-paranoia) libcdio-paranoia
("libgcrypt" ,libgcrypt) libgcrypt
("libgdata" ,libgdata) libgdata
("libgphoto2" ,libgphoto2) libgphoto2
("libgudev" ,libgudev) libgudev
("libimobiledevice" ,libimobiledevice) libimobiledevice
("libmtp" ,libmtp) libmtp
("libnfs" ,libnfs) libnfs
("libsecret" ,libsecret) libsecret
("libsmbclient" ,samba) samba
("libsoup" ,libsoup) libsoup
("libxml2" ,libxml2) libxml2
("openssh" ,openssh) openssh
("polkit" ,polkit) polkit
("udisks" ,udisks))) udisks))
(home-page "https://wiki.gnome.org/gvfs/") (home-page "https://wiki.gnome.org/gvfs/")
(synopsis "Userspace virtual file system for GIO") (synopsis "Userspace virtual file system for GIO")
(description (description
@ -8363,7 +8387,7 @@ logo='~a'~%" icon))))))
("xmllint" ,libxml2))) ("xmllint" ,libxml2)))
(inputs (inputs
(list accountsservice (list accountsservice
check-0.14 ;for testing check ;for testing
elogind elogind
eudev eudev
gnome-session gnome-session
@ -8799,7 +8823,7 @@ easy, safe, and automatic.")
(define-public tracker (define-public tracker
(package (package
(name "tracker") (name "tracker")
(version "3.1.2") (version "3.3.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker/" (uri (string-append "mirror://gnome/sources/tracker/"
@ -8807,7 +8831,7 @@ easy, safe, and automatic.")
"tracker-" version ".tar.xz")) "tracker-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"13zcc07wd51sz7kglk3xbjrsq7d835cxfr7iwjr7nn2xcri8jdns")))) "1lkf353xvwc0hfyi03aq2qjikx3zmva7r56nxiavy7kqjyygbmjs"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t
@ -8838,28 +8862,31 @@ easy, safe, and automatic.")
(invoke "dbus-run-session" "--" "meson" "test" (invoke "dbus-run-session" "--" "meson" "test"
"--print-errorlogs"))))))) "--print-errorlogs")))))))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") (list `(,glib "bin")
("gobject-introspection" ,gobject-introspection) gobject-introspection
("docbook-xsl" ,docbook-xsl) docbook-xsl
("docbook-xml-4.5" ,docbook-xml) docbook-xml
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) gsettings-desktop-schemas
("asciidoc" ,asciidoc) asciidoc
("xsltproc" ,libxslt) libxslt
("cmake-minimal" ,cmake-minimal) cmake-minimal
("python-pygobject" ,python-pygobject) python-pygobject
("gtk-doc" ,gtk-doc/stable) gtk-doc/stable
("intltool" ,intltool) intltool
("dbus" ,dbus) dbus
("pkg-config" ,pkg-config) pkg-config
("python" ,python) python
("vala" ,vala))) vala))
(inputs (inputs
`(("dbus" ,dbus) (list dbus
("sqlite" ,sqlite) libsoup))
("libxml2" ,libxml2) (propagated-inputs
("icu4c" ,icu4c) ; libunistring gets miner-miner-fs test to fail. ;; These are in Requires or Requires.private of tracker-sparql-3.0.pc.
("json-glib" ,json-glib) (list glib
("libsoup" ,libsoup-minimal-2))) ; tracker-miners requires the same version. icu4c ;libunistring gets miner-miner-fs test to fail
json-glib
libxml2
sqlite))
(synopsis "Metadata database, indexer and search tool") (synopsis "Metadata database, indexer and search tool")
(home-page "https://wiki.gnome.org/Projects/Tracker") (home-page "https://wiki.gnome.org/Projects/Tracker")
(description (description
@ -8892,7 +8919,7 @@ endpoint and it understands SPARQL.")
(define-public tracker-miners (define-public tracker-miners
(package (package
(name "tracker-miners") (name "tracker-miners")
(version "3.1.2") (version "3.3.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker-miners/" (uri (string-append "mirror://gnome/sources/tracker-miners/"
@ -8900,12 +8927,12 @@ endpoint and it understands SPARQL.")
"/tracker-miners-" version ".tar.xz")) "/tracker-miners-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0fpd69lgm8cckbamcf9c2q57glxf0s3jcfwkq8p3s4lfsvdclmd0")))) "151w6ljq1gk9idqfq9qs3w16vms91jnxy59c9kx6jaf0fb9cdp9y"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t
#:configure-flags #:configure-flags
(list "-Dminer_rss=false" ; libgrss is required. (list "-Dminer_rss=false" ; libgrss is required.
;; Ensure the RUNPATH contains all installed library locations. ;; Ensure the RUNPATH contains all installed library locations.
(string-append "-Dc_link_args=-Wl,-rpath=" (string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
@ -8937,58 +8964,62 @@ endpoint and it understands SPARQL.")
"foreach example_name: []")) "foreach example_name: []"))
;; Disable this test that is failing randomly: ;; Disable this test that is failing randomly:
;; https://gitlab.gnome.org/GNOME/tracker-miners/-/issues/170. ;; https://gitlab.gnome.org/GNOME/tracker-miners/-/issues/170.
(substitute* "tests/libtracker-miner/meson.build" (substitute* "tests/libtracker-miner/meson.build"
(("'miner-fs'.*") (("'miner-fs'.*")
"")))) ""))))
(replace 'check (replace 'check
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(when tests? (when tests?
;; Some tests expect to write to $HOME. ;; Some tests expect to write to $HOME.
(setenv "HOME" "/tmp") (setenv "HOME" "/tmp")
(setenv "LANG" "en_US.UTF-8") (setenv "LANG" "en_US.UTF-8")
(invoke "dbus-run-session" "--" "meson" "test" (invoke "dbus-run-session" "--" "meson" "test"
"--print-errorlogs"))))))) "--print-errorlogs"
;; Do not run the slow test, which fail (see:
;; https://gitlab.gnome.org/GNOME/tracker-miners
;; /-/issues/226).
"--no-suite" "slow")))))))
(native-inputs (native-inputs
`(("dbus" ,dbus) (list dbus
("intltool" ,intltool) intltool
("glib:bin" ,glib "bin") `(,glib "bin")
("docbook-xsl" ,docbook-xsl) docbook-xsl
("docbook-xml-4.5" ,docbook-xml) docbook-xml
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) gsettings-desktop-schemas
("asciidoc" ,asciidoc) asciidoc
("xsltproc" ,libxslt) libxslt
("gobject-introspection" ,gobject-introspection) gobject-introspection
("pkg-config" ,pkg-config) pkg-config
("python-pygobject" ,python-pygobject))) python-pygobject))
(inputs (inputs
`(("exempi" ,exempi) (list exempi
("ffmpeg" ,ffmpeg) ffmpeg
("flac" ,flac) flac
("giflib" ,giflib) giflib
("glib" ,glib) glib
("gstreamer" ,gstreamer) gstreamer
("icu4c" ,icu4c) icu4c
("json-glib" ,json-glib) json-glib
("libcue" ,libcue) libcue
("libexif" ,libexif) libexif
("libgsf" ,libgsf) libgsf
("libgxps" ,libgxps) libgxps
("libiptcdata" ,libiptcdata) libiptcdata
("libjpeg" ,libjpeg-turbo) libjpeg-turbo
("libosinfo" ,libosinfo) libosinfo
("libpng" ,libpng) libpng
("libseccomp" ,libseccomp) libseccomp
("libsoup" ,libsoup-minimal-2) ; because tracker requires this version. libsoup
("libtiff" ,libtiff) libtiff
("libvorbis" ,libvorbis) libvorbis
("libxml2" ,libxml2) libxml2
("poppler" ,poppler) poppler
("shared-mime-info" ,shared-mime-info) shared-mime-info
("taglib" ,taglib) taglib
("totem-pl-parser" ,totem-pl-parser) totem-pl-parser
("tracker" ,tracker) tracker
("upower" ,upower) upower
("zlib" ,zlib))) zlib))
(synopsis "Metadata database, indexer and search tool") (synopsis "Metadata database, indexer and search tool")
(home-page "https://wiki.gnome.org/Projects/Tracker") (home-page "https://wiki.gnome.org/Projects/Tracker")
(description (description
@ -11938,7 +11969,10 @@ It uses pandoc as back-end for parsing Markdown.")
(arguments (arguments
`(#:configure-flags `(#:configure-flags
(list "-Dsystemd=false" (list "-Dsystemd=false"
"-Dlogind-provider=elogind") "-Dlogind-provider=elogind"
,@(if (not (package? (this-package-native-input "valgrind")))
`("-Dtests=false") ; Some tests still run.
`()))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'install 'wrap (add-after 'install 'wrap
@ -11958,7 +11992,11 @@ It uses pandoc as back-end for parsing Markdown.")
python-wrap) python-wrap)
#t)))))) #t))))))
(native-inputs (native-inputs
(list check pkg-config swig valgrind)) (append
(list check pkg-config swig)
(if (member (%current-system) (package-supported-systems valgrind))
(list valgrind)
'())))
(inputs (inputs
`(("glib" ,glib) `(("glib" ,glib)
("json-glib" ,json-glib) ("json-glib" ,json-glib)
@ -12596,7 +12634,9 @@ Document Analysis and Recognition program.")
("xvfb" ,xorg-server-for-tests) ("xvfb" ,xorg-server-for-tests)
("gettext" ,gettext-minimal))) ("gettext" ,gettext-minimal)))
(inputs (inputs
(list gtk gobject-introspection libportal)) (list gobject-introspection libportal))
(propagated-inputs
(list gtk)) ;libadwaita-1.pc 'Requires' it
(home-page "https://gnome.pages.gitlab.gnome.org/libadwaita/") (home-page "https://gnome.pages.gitlab.gnome.org/libadwaita/")
(synopsis "Building blocks for GNOME applications") (synopsis "Building blocks for GNOME applications")
(description (description

View file

@ -127,10 +127,6 @@
"--enable-hardening" "--enable-hardening"
"--enable-optimize" "--enable-optimize"
"--enable-release" "--enable-release"
;; FIXME: rust-simd is disabled otherwise the build fails with
;; "error: `[u32; 64]` is forbidden as the type of a const generic
;; parameter".
"--disable-rust-simd"
"--enable-readline" "--enable-readline"
"--enable-shared-js" "--enable-shared-js"
"--with-system-icu" "--with-system-icu"
@ -225,8 +221,7 @@
(native-inputs (native-inputs
(list autoconf-2.13 (list autoconf-2.13
automake automake
;; TODO(staging): Use the default LLVM in the next rebuild cycle. llvm ;for llvm-objdump
llvm-9 ;for llvm-objdump
perl perl
pkg-config pkg-config
python-3 python-3
@ -372,8 +367,8 @@ in C/C++.")
;; XXXX: Workaround 'snippet' limitations. ;; XXXX: Workaround 'snippet' limitations.
(define computed-origin-method (@@ (guix packages) computed-origin-method)) (define computed-origin-method (@@ (guix packages) computed-origin-method))
(define %icecat-version "91.10.0-guix0-preview1") (define %icecat-version "91.11.0-guix0-preview1")
(define %icecat-build-id "20220531000000") ;must be of the form YYYYMMDDhhmmss (define %icecat-build-id "20220628000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball ;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat' ;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -395,11 +390,11 @@ in C/C++.")
"firefox-" upstream-firefox-version ".source.tar.xz")) "firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256 (sha256
(base32 (base32
"1fz11rmbb0qjcp84wz7hmq7wy1zh9bk6vk47xwhrinmmifrqqnl2")))) "1905595fsydd8q4bqxsp5gb4h9s47qjj90wjrqv4ky8yxs9bx6z5"))))
(upstream-icecat-base-version "91.10.0") ; maybe older than base-version (upstream-icecat-base-version "91.11.0") ; maybe older than base-version
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version)) ;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
(gnuzilla-commit "4c39c619daf344f36962d958d809f6d42d3fce4e") (gnuzilla-commit "65a61287a5142a9403ec00d973cb5e5d658a3c71")
(gnuzilla-source (gnuzilla-source
(origin (origin
(method git-fetch) (method git-fetch)
@ -411,7 +406,7 @@ in C/C++.")
(string-take gnuzilla-commit 8))) (string-take gnuzilla-commit 8)))
(sha256 (sha256
(base32 (base32
"1fizsq0dphm40nj6vnvjp87v34iyg78gllv3jp5ssn43ln4jiyb7")))) "02mg7vg0bv5lxkdg86z18mf43rx7sh5i2w69lnirr8zqcrr5yd48"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it ;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings. ;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
@ -978,11 +973,11 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-))))))) (cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat! ;; Update this together with icecat!
(define %icedove-build-id "20220531000000") ;must be of the form YYYYMMDDhhmmss (define %icedove-build-id "20220624000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove (define-public icedove
(package (package
(name "icedove") (name "icedove")
(version "91.10.0") (version "91.11.0")
(source icecat-source) (source icecat-source)
(properties (properties
`((cpe-name . "thunderbird_esr"))) `((cpe-name . "thunderbird_esr")))
@ -1261,7 +1256,7 @@ standards of the IceCat project.")
;; in the Thunderbird release tarball. We don't use the release ;; in the Thunderbird release tarball. We don't use the release
;; tarball because it duplicates the Icecat sources and only adds the ;; tarball because it duplicates the Icecat sources and only adds the
;; "comm" directory, which is provided by this repository. ;; "comm" directory, which is provided by this repository.
,(let ((changeset "4a4b901410a9055d078d0cdd7c62b2b5d56ffbad")) ,(let ((changeset "da48e7ecf800ec7761a3b6e0ca81e0c90adc30f7"))
(origin (origin
(method hg-fetch) (method hg-fetch)
(uri (hg-reference (uri (hg-reference
@ -1270,7 +1265,7 @@ standards of the IceCat project.")
(file-name (string-append "thunderbird-" version "-checkout")) (file-name (string-append "thunderbird-" version "-checkout"))
(sha256 (sha256
(base32 (base32
"0i2wpi08jfksqqc0j6q362nyk3zmlqd5ds2w7mm74infvrw6fzzq"))))) "0lg8z0zk05w8jah364lm7vkc95j1nkg93gf46byz0kd4nslg05nx")))))
("cargo" ,rust "cargo") ("cargo" ,rust "cargo")
("clang" ,clang) ("clang" ,clang)
("llvm" ,llvm) ("llvm" ,llvm)

View file

@ -34,6 +34,7 @@
;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com> ;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2021 Lu Hui <luhux76@gmail.com> ;;; Copyright © 2021 Lu Hui <luhux76@gmail.com>
;;; Copyright © 2022 Pier-Hugues Pellerin <phpellerin@gmail.com> ;;; Copyright © 2022 Pier-Hugues Pellerin <phpellerin@gmail.com>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -627,7 +628,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package (package
(inherit go-1.16) (inherit go-1.16)
(name "go") (name "go")
(version "1.17.9") (version "1.17.11")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -637,7 +638,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"02l6gxn738kam1niy2nl2wpsbzl4x87h2wik6hd3py19kq4z2flw")))) "11wy6092qm7v0n10cjkyp49sbchqazi3vnij8k2sq7k7jaj63z5p"))))
(outputs '("out" "tests")) ; 'tests' contains distribution tests. (outputs '("out" "tests")) ; 'tests' contains distribution tests.
(arguments (arguments
`(#:modules ((ice-9 match) `(#:modules ((ice-9 match)
@ -9843,3 +9844,50 @@ Jsonnet} data templating language in Go. It is a feature-complete,
production-ready implementation, compatible with the original Jsonnet C++ production-ready implementation, compatible with the original Jsonnet C++
implementation.") implementation.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public go-github-com-gorilla-websocket
(package
(name "go-github-com-gorilla-websocket")
(version "1.5.0")
(home-page "https://github.com/gorilla/websocket")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1xrr6snvs9g1nzxxg05w4i4pq6k1xjljl5mvavd838qc468n118i"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/gorilla/websocket"))
(synopsis "Fast WebSocket implementation for Go")
(description "Gorilla WebSocket is a Go implementation of the WebSocket protocol.")
(license license:bsd-2)))
(define-public go-github-com-sourcegraph-jsonrpc2
(package
(name "go-github-com-sourcegraph-jsonrpc2")
(version "0.1.0")
(home-page "https://github.com/sourcegraph/jsonrpc2")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1dk0w32k96vxrwnmm24wqx337dn8ylch65qwrbc3wh7whw2xx71q"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/sourcegraph/jsonrpc2"))
(propagated-inputs
(list
go-github-com-daviddengcn-go-colortext
go-github-com-motemen-go-colorine
go-github-com-gorilla-websocket))
(synopsis "Provides a client and server implementation of JSON-RPC 2.0")
(description
"Package jsonrpc2 provides a Go implementation of JSON-RPC 2.0.")
(license license:expat)))

View file

@ -138,7 +138,7 @@ between two other data points.")
(define-public gama (define-public gama
(package (package
(name "gama") (name "gama")
(version "2.19") (version "2.21")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -146,7 +146,7 @@ between two other data points.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0lh3abvyq07igi44mmjif3nwy6iig0j1jq6rrxkrvkhhm5q98b1q")) "0xncq4cgzn5mgwxw515xa0rhazf28y4cnpwg67kbibya7zx2iqw7"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin

View file

@ -616,7 +616,7 @@ transformed into common image formats for display or printing.")
(define-public python-graph-tool (define-public python-graph-tool
(package (package
(name "python-graph-tool") (name "python-graph-tool")
(version "2.43") (version "2.45")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -624,7 +624,7 @@ transformed into common image formats for display or printing.")
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0v58in4rwk9fhjarjw6xfxpx5zz2z13sy3yvd14b5kr0884yw6sz")))) "0s46qqg454kwq2px7x1a4ckryclkxnrz1r7gj6bv40nsrynafbgr"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:imported-modules (,@%gnu-build-system-modules `(#:imported-modules (,@%gnu-build-system-modules

View file

@ -841,7 +841,9 @@ model to base your own plug-in on, here it is.")
("libgme" ,libgme) ("libgme" ,libgme)
("libgudev" ,libgudev) ("libgudev" ,libgudev)
("libkate" ,libkate) ("libkate" ,libkate)
("libmfx" ,mediasdk) ,@(if (target-x86?)
`(("libmfx" ,mediasdk))
'())
("libmms" ,libmms) ("libmms" ,libmms)
("libmodplug" ,libmodplug) ("libmodplug" ,libmodplug)
("libmpcdec" ,libmpcdec) ("libmpcdec" ,libmpcdec)
@ -887,7 +889,9 @@ model to base your own plug-in on, here it is.")
("soundtouch" ,soundtouch) ("soundtouch" ,soundtouch)
("spandsp" ,spandsp) ("spandsp" ,spandsp)
("srt" ,srt) ("srt" ,srt)
("svthevcenc" ,svt-hevc) ,@(if (target-x86?)
`(("svthevcenc" ,svt-hevc))
'())
("tinyalsa" ,tinyalsa) ("tinyalsa" ,tinyalsa)
("transcode" ,transcode) ("transcode" ,transcode)
("usrsctp" ,usrsctp) ("usrsctp" ,usrsctp)

View file

@ -279,6 +279,19 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.")
"See 'COPYING' in the distribution.")) "See 'COPYING' in the distribution."))
(home-page "https://www.freedesktop.org/wiki/Software/HarfBuzz/"))) (home-page "https://www.freedesktop.org/wiki/Software/HarfBuzz/")))
(define-public harfbuzz-4
(package
(inherit harfbuzz)
(version "4.3.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/harfbuzz/harfbuzz"
"/releases/download/" version
"/harfbuzz-" version ".tar.xz"))
(sha256
(base32
"0c5mzwgz43d37h75p4b6cgjg4v24jdd96i7gjpgxirn8qks2i5m4"))))))
(define-public libdatrie (define-public libdatrie
(package (package
(name "libdatrie") (name "libdatrie")
@ -426,6 +439,29 @@ handling for GTK+-2.x.")
(("test-layout\\$\\(EXEEXT\\)") "")) (("test-layout\\$\\(EXEEXT\\)") ""))
#t))))))) #t)))))))
(define-public pango-1.90
(package
(inherit pango)
(name "pango")
(version "1.90.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/pango/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(patches (search-patches "pango-skip-libthai-test.patch"))
(sha256
(base32
"1zqif72jxa819bwi4jv2vgac574qas3w37f7qvn8l31rm1jgjf7i"))
(modules '((guix build utils)))
(snippet
#~(begin
(substitute* "pango/pangocairo-font.c"
(("cairo_user_font_face_set_render_color_glyph_func")
"cairo_user_font_face_set_render_glyph_func"))))))
(inputs (modify-inputs (package-inputs pango)
(prepend harfbuzz-4)))))
(define-public pangox-compat (define-public pangox-compat
(package (package
(name "pangox-compat") (name "pangox-compat")
@ -653,6 +689,7 @@ highlighting and other features typical of a source code editor.")
(list ;; Required by gdk-pixbuf-2.0.pc (list ;; Required by gdk-pixbuf-2.0.pc
glib glib
;; Required by gdk-pixbuf-xlib-2.0.pc ;; Required by gdk-pixbuf-xlib-2.0.pc
;; TODO: Remove on core-updates.
libx11 libx11
;; Used for testing and required at runtime. ;; Used for testing and required at runtime.
shared-mime-info)) shared-mime-info))
@ -687,6 +724,34 @@ scaled, composited, modified, saved, or rendered.")
(home-page "https://wiki.gnome.org/Projects/GdkPixbuf") (home-page "https://wiki.gnome.org/Projects/GdkPixbuf")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public gdk-pixbuf-xlib
(package
(name "gdk-pixbuf-xlib")
(version "2.40.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://gitlab.gnome.org/Archive/gdk-pixbuf-xlib.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1vwnvqxap3r9zw932jwasazy9sxw49j78x2g650xkn70iili90bg"))))
(build-system meson-build-system)
(arguments
'(#:configure-flags '("-Dgtk_doc=true")))
(native-inputs (list pkg-config gtk-doc/stable))
(inputs (list gdk-pixbuf libx11))
(synopsis "Deprecated Xlib integration for GdkPixbuf")
(description
"GdkPixbuf-Xlib contains the deprecated API for integrating GdkPixbuf with
Xlib data types. This library was originally shipped by gdk-pixbuf, and has
since been moved out of the original repository. No newly written code should
ever use this library.")
(home-page "https://gitlab.gnome.org/Archive/gdk-pixbuf-xlib")
(license license:lgpl2.1+)))
;;; A minimal variant used to prevent a cycle with Inkscape. ;;; A minimal variant used to prevent a cycle with Inkscape.
(define-public at-spi2-core-minimal (define-public at-spi2-core-minimal
(hidden-package (hidden-package
@ -1048,7 +1113,7 @@ application suites.")
(define-public gtk (define-public gtk
(package (package
(name "gtk") (name "gtk")
(version "4.6.1") (version "4.6.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1056,7 +1121,7 @@ application suites.")
(version-major+minor version) "/" (version-major+minor version) "/"
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 "0pzcs24j67f90kjcp6apgn6rffynxksjm1m7d3an7kdv3k90hmfq")) (base32 "0w5fb4grgmb6nhf2glq2y5xqnc9y4v3lm0s9xnbw5xv96p8y9gvv"))
(patches (patches
(search-patches "gtk4-respect-GUIX_GTK4_PATH.patch")))) (search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"))))
(build-system meson-build-system) (build-system meson-build-system)
@ -1067,10 +1132,10 @@ application suites.")
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)) ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:))
#:configure-flags #:configure-flags
(list (list
"-Dbroadway-backend=true" ;for broadway display-backend "-Dbroadway-backend=true" ;for broadway display-backend
"-Dcloudproviders=enabled" ;for cloud-providers support "-Dcloudproviders=enabled" ;for cloud-providers support
"-Dtracker=enabled" ;for filechooser search support "-Dtracker=enabled" ;for filechooser search support
"-Dcolord=enabled" ;for color printing support "-Dcolord=enabled" ;for color printing support
,@(if (%current-target-system) ,@(if (%current-target-system)
;; If true, gtkdoc-scangobj will try to execute a ;; If true, gtkdoc-scangobj will try to execute a
;; cross-compiled binary. ;; cross-compiled binary.
@ -1108,9 +1173,13 @@ application suites.")
(substitute* (find-files "testsuite" "meson.build") (substitute* (find-files "testsuite" "meson.build")
(("[ \t]*'empty-text.node',") "") (("[ \t]*'empty-text.node',") "")
(("[ \t]*'testswitch.node',") "") (("[ \t]*'testswitch.node',") "")
(("[ \t]*'widgetfactory.node',") "")) (("[ \t]*'widgetfactory.node',") "")
;; The unaligned-offscreen test fails for unknown reasons, also
;; on different distributions (see:
;; https://gitlab.gnome.org/GNOME/gtk/-/issues/4889).
((" 'unaligned-offscreen',") ""))
(substitute* "testsuite/reftests/meson.build" (substitute* "testsuite/reftests/meson.build"
(("[ \t]*'label-wrap-justify.ui',") "")) )) (("[ \t]*'label-wrap-justify.ui',") ""))))
(add-before 'build 'set-cache (add-before 'build 'set-cache
(lambda _ (lambda _
(setenv "XDG_CACHE_HOME" (getcwd)))) (setenv "XDG_CACHE_HOME" (getcwd))))
@ -1157,72 +1226,72 @@ application suites.")
(string-append out "/share/doc") (string-append out "/share/doc")
(string-append doc "/share/doc")))))))) (string-append doc "/share/doc"))))))))
(native-inputs (native-inputs
`(("docbook-xml-4.3" ,docbook-xml-4.3) (list docbook-xml-4.3
("docbook-xsl" ,docbook-xsl) docbook-xsl
("gettext-minimal" ,gettext-minimal) gettext-minimal
("glib:bin" ,glib "bin") `(,glib "bin")
("gobject-introspection" ,gobject-introspection) ;for building introspection data gobject-introspection ;for building introspection data
("graphene" ,graphene) graphene
("gtk-doc" ,gtk-doc) ;for building documentation gtk-doc ;for building documentation
("intltool" ,intltool) intltool
("libxslt" ,libxslt) ;for building man-pages libxslt ;for building man-pages
("pkg-config" ,pkg-config) pkg-config
("python-pygobject" ,python-pygobject) python-pygobject
;; These python modules are required for building documentation. ;; These python modules are required for building documentation.
("python-docutils" ,python-docutils) python-docutils
("python-jinja2" ,python-jinja2) python-jinja2
("python-markdown" ,python-markdown) python-markdown
("python-markupsafe" ,python-markupsafe) python-markupsafe
("python-pygments" ,python-pygments) python-pygments
("python-toml" ,python-toml) python-toml
("python-typogrify" ,python-typogrify) python-typogrify
("sassc" ,sassc) ;for building themes sassc ;for building themes
("tzdata" ,tzdata-for-tests) tzdata-for-tests
("vala" ,vala) vala
("xorg-server-for-tests" ,xorg-server-for-tests))) xorg-server-for-tests))
(inputs (inputs
(list colord ;for color printing support (list colord ;for color printing support
cups ;for CUPS print-backend cups ;for CUPS print-backend
ffmpeg ;for ffmpeg media-backend ffmpeg ;for ffmpeg media-backend
fribidi fribidi
gstreamer ;for gstreamer media-backend gstreamer ;for gstreamer media-backend
gst-plugins-bad ;provides gstreamer-player gst-plugins-bad ;provides gstreamer-player
gst-plugins-base ;provides gstreamer-gl gst-plugins-base ;provides gstreamer-gl
harfbuzz harfbuzz
iso-codes iso-codes
json-glib json-glib
libcloudproviders ;for cloud-providers support libcloudproviders ;for cloud-providers support
libjpeg-turbo libjpeg-turbo
libpng libpng
librsvg librsvg
libtiff libtiff
python python
rest rest
tracker)) ;for filechooser search support tracker)) ;for filechooser search support
(propagated-inputs (propagated-inputs
;; Following dependencies are referenced in .pc files. ;; Following dependencies are referenced in .pc files.
`(("cairo" ,cairo) (list cairo
("fontconfig" ,fontconfig) fontconfig
("librsvg" ,librsvg) librsvg
("glib" ,glib) glib
("graphene" ,graphene) graphene
("libepoxy" ,libepoxy) libepoxy
("libx11" ,libx11) ;for x11 display-backend libx11 ;for x11 display-backend
("libxcomposite" ,libxcomposite) libxcomposite
("libxcursor" ,libxcursor) libxcursor
("libxdamage" ,libxdamage) libxdamage
("libxext" ,libxext) libxext
("libxfixes" ,libxfixes) libxfixes
("libxi" ,libxi) libxi
("libxinerama" ,libxinerama) ;for xinerama support libxinerama ;for xinerama support
("libxkbcommon" ,libxkbcommon) libxkbcommon
("libxrandr" ,libxrandr) libxrandr
("libxrender" ,libxrender) libxrender
("pango" ,pango) pango
("vulkan-headers" ,vulkan-headers) vulkan-headers
("vulkan-loader" ,vulkan-loader) ;for vulkan graphics API support vulkan-loader ;for vulkan graphics API support
("wayland" ,wayland) ;for wayland display-backend wayland ;for wayland display-backend
("wayland-protocols" ,wayland-protocols))) wayland-protocols))
(native-search-paths (native-search-paths
(list (list
(search-path-specification (search-path-specification

View file

@ -42,6 +42,7 @@
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org> ;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -1614,7 +1615,7 @@ for MySQL.")
(define-public guile-config (define-public guile-config
(package (package
(name "guile-config") (name "guile-config")
(version "0.4.2") (version "0.5.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1623,7 +1624,7 @@ for MySQL.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (base32 (sha256 (base32
"09028ylbddjdp3d67zdjz3pnsjqz6zs2bfck5rr3dfaa0qjap40n")))) "0s708k6qnk9155bjrcy1f1v7lqhlpaj4mjip46sr3iw85hca92wz"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list autoconf automake pkg-config texinfo)) (list autoconf automake pkg-config texinfo))
@ -1652,16 +1653,16 @@ above command-line parameters.")
(define-public guile-hall (define-public guile-hall
(package (package
(name "guile-hall") (name "guile-hall")
(version "0.3.1") (version "0.4.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://gitlab.com/a-sassmannshausen/guile-hall") (url "https://gitlab.com/a-sassmannshausen/guile-hall")
(commit version))) (commit version)))
(file-name "guile-hall-0.3.1-checkout") (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1s24nigdra6rvclvy15l2aw00c3aq9vv8qwxylzs60darbl36206")))) (base32 "0yrrik1v1xbik5h5q7w2cxrx6gvkmcdm32dl36i7xqdq8pr8sh2d"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules `(#:modules
@ -4041,8 +4042,8 @@ according to Bitorrent BEP003.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public guile-irc (define-public guile-irc
(let ((commit "375d3bde9c6ae7ccc9d7cc65817966b6fda8f26a") (let ((commit "7d08ce6fdcb87ac668c5d3bfd5584247805507bb")
(revision "0")) (revision "1"))
(package (package
(name "guile-irc") (name "guile-irc")
(version (git-version "0.3.0" revision commit)) (version (git-version "0.3.0" revision commit))
@ -4054,12 +4055,12 @@ according to Bitorrent BEP003.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"113lcckcywrz9060w1c3fnvr8d7crdsjgsv4h47hgmr1slgadl4y")))) "1jx8704200l29ndg9bfyamgxrzknya0f0vwb2sxhd0k3b8r94avw"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags '("--enable-gnutls=yes"))) `(#:configure-flags '("--enable-gnutls=yes")))
(native-inputs (native-inputs
(list autoconf automake texinfo)) (list autoconf automake texinfo pkg-config))
(inputs (inputs
(list gnutls guile-3.0)) (list gnutls guile-3.0))
(home-page "https://github.com/rekado/guile-irc") (home-page "https://github.com/rekado/guile-irc")

View file

@ -84,6 +84,7 @@
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (gnu packages xorg) #:use-module (gnu packages xorg)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system meson) #:use-module (guix build-system meson)
#:use-module (guix build-system perl) #:use-module (guix build-system perl)
@ -318,7 +319,7 @@ operability and find drivers.")
(define-public hwinfo (define-public hwinfo
(package (package
(name "hwinfo") (name "hwinfo")
(version "21.81") (version "21.82")
(home-page "https://github.com/openSUSE/hwinfo") (home-page "https://github.com/openSUSE/hwinfo")
(source (source
(origin (origin
@ -329,7 +330,7 @@ operability and find drivers.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0iyx1fb66s6b5ai4agw91nvl9wwk7z8g6y475vry3wv80dngzc43")) (base32 "1ih6vrgh64408cijywy9by2snynkw91p3h0ry5pzk3lyqsl0wnlh"))
(modules (modules
'((guix build utils))) '((guix build utils)))
(snippet (snippet
@ -598,8 +599,36 @@ human-readable format and checks if it conforms to the standards.")
(sha256 (sha256
(base32 "0hm86d51kj5r3yxq4c23aa57cs8igz3wrkbjn20z4frx75rpf46m")))) (base32 "0hm86d51kj5r3yxq4c23aa57cs8igz3wrkbjn20z4frx75rpf46m"))))
(build-system python-build-system) (build-system python-build-system)
(arguments
(list
#:imported-modules `(,@%python-build-system-modules
,@%glib-or-gtk-build-system-modules)
#:modules '(((guix build glib-or-gtk-build-system) #:prefix glib:)
(guix build python-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file))
(add-after 'install 'glib-or-gtk-compile-schemas
(assoc-ref glib:%standard-phases 'glib-or-gtk-compile-schemas))
(add-after 'install 'glib-or-gtk-wrap
(assoc-ref glib:%standard-phases 'glib-or-gtk-wrap))
(add-after 'glib-or-gtk-wrap 'wrap-more
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-script (search-input-file outputs "bin/h-client")
;; Wrap GI_TYPELIB_PATH to avoid the error "ValueError:
;; Namespace GdkPixbuf not available".
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))
`("PATH" = (,(dirname (search-input-file
inputs "sbin/lspci"))
,(dirname (search-input-file
inputs "bin/lsusb"))))))))))
(inputs (inputs
(list gdk-pixbuf (list gdk-pixbuf
gobject-introspection ;for GI_TYPELIB_PATH
guile-3.0
gtk+ gtk+
pciutils pciutils
python-pycurl python-pycurl

View file

@ -304,14 +304,14 @@ to @code{cabal repl}).")
(define-public git-annex (define-public git-annex
(package (package
(name "git-annex") (name "git-annex")
(version "10.20220525") (version "10.20220624")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/" (uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz")) "git-annex/git-annex-" version ".tar.gz"))
(sha256 (sha256
(base32 "1nrwa4qm3xkr11x0b0c1mx052zhd7lz9w97xf0ycdkhsyc6vbiy6")))) (base32 "0a17ph8w620fmbwhm4yhdz2pwp0z8g5d4qsw2bg8k1par2n8rnmz"))))
(build-system haskell-build-system) (build-system haskell-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View file

@ -30,6 +30,7 @@
(define-module (gnu packages ibus) (define-module (gnu packages ibus)
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
@ -320,26 +321,26 @@ Chinese pinyin input methods.")
"16vd0k8wm13s38869jqs3dnwmjvywgn0snnpyi41m28binhlssf8")))) "16vd0k8wm13s38869jqs3dnwmjvywgn0snnpyi41m28binhlssf8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags (list
;; Use absolute exec path in the anthy.xml. #:configure-flags
(list (string-append "--libexecdir=" %output "/libexec")) ;; Use absolute exec path in the anthy.xml.
;; The test suite fails (see: #~(list (string-append "--libexecdir=" #$output "/libexec"))
;; https://github.com/ibus/ibus-anthy/issues/28). ;; The test suite fails (see:
#:tests? #f ;; https://github.com/ibus/ibus-anthy/issues/28).
#:phases #:tests? #f
(modify-phases %standard-phases #:phases
(add-after 'install 'wrap-programs #~(modify-phases %standard-phases
(lambda* (#:key inputs outputs #:allow-other-keys) (add-after 'install 'wrap-programs
(for-each (lambda (prog) (lambda* (#:key inputs #:allow-other-keys)
(wrap-program (search-input-file (for-each
outputs (string-append "libexec/" prog)) (lambda (prog)
`("GUIX_PYTHONPATH" ":" prefix (wrap-program (string-append #$output "/libexec/" prog)
(,(getenv "GUIX_PYTHONPATH"))) `("GUIX_PYTHONPATH" ":" prefix
`("GI_TYPELIB_PATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))
(,(getenv "GI_TYPELIB_PATH") `("GI_TYPELIB_PATH" ":" prefix
,(search-input-directory (,(getenv "GI_TYPELIB_PATH")
inputs "lib/girepository-1.0"))))) ,(string-append #$output "/lib/girepository-1.0")))))
'("ibus-engine-anthy" "ibus-setup-anthy"))))))) '("ibus-engine-anthy" "ibus-setup-anthy")))))))
(native-inputs (native-inputs
(list gettext-minimal (list gettext-minimal
`(,glib "bin") `(,glib "bin")

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
@ -119,7 +119,21 @@ C/C++ part.")
"-src.tgz")) "-src.tgz"))
(sha256 (sha256
(base32 (base32
"1m9zgkaf5lyh65nyc6n0n5bs2f5k53nnj1ih6nskpwbvq4l5884d")))))) "1m9zgkaf5lyh65nyc6n0n5bs2f5k53nnj1ih6nskpwbvq4l5884d"))))
(arguments
(if (target-riscv64?)
(substitute-keyword-arguments (package-arguments icu4c)
((#:phases phases)
`(modify-phases ,phases
(replace 'disable-failing-test
;; It is unknown why these tests are failing.
(lambda _
(substitute* "source/test/cintltst/ucptrietest.c"
((".*addTest.*") ""))
(substitute* "source/test/intltest/numbertest_api.cpp"
(("(TESTCASE_AUTO\\(unitUsage\\));" all)
(string-append "//" all))))))))
(package-arguments icu4c)))))
(define-public icu4c-69 (define-public icu4c-69
(package (package

View file

@ -13,7 +13,7 @@
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot> ;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2021 Oleh Malyi <astroclubzp@gmail.com> ;;; Copyright © 2021 Oleh Malyi <astroclubzp@gmail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net> ;;; Copyright © 2021, 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Andy Tai <atai@atai.org> ;;; Copyright © 2021 Andy Tai <atai@atai.org>
;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com> ;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
@ -194,7 +194,8 @@ licences similar to the Modified BSD licence."))))
(sha256 (sha256
(base32 (base32
"0qpcd3n26q52dpyibm11f5l6cgscdr54p2jish39gc3p1f5h3ws1")) "0qpcd3n26q52dpyibm11f5l6cgscdr54p2jish39gc3p1f5h3ws1"))
(patches (search-patches "mia-fix-boost-headers.patch")))) (patches (search-patches "mia-fix-boost-headers.patch"
"mia-vtk9.patch"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -221,10 +222,7 @@ licences similar to the Modified BSD licence."))))
nlopt nlopt
openexr-2 openexr-2
python-lxml python-lxml
;; The build fails when using the regular VTK (currently at version vtk))
;; 9), with error "addons/vtk/vtkvf.cc:23:10: fatal error:
;; vtkStructuredPointsReader.h: No such file or directory".
vtk-7))
(native-inputs (native-inputs
(list pkg-config (list pkg-config
python-wrapper)) python-wrapper))

View file

@ -162,7 +162,7 @@ YouTube videos without requiring API and opens/downloads them using mpv/ytdl.")
(define-public feh (define-public feh
(package (package
(name "feh") (name "feh")
(version "3.8") (version "3.9")
(home-page "https://feh.finalrewind.org/") (home-page "https://feh.finalrewind.org/")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -170,16 +170,19 @@ YouTube videos without requiring API and opens/downloads them using mpv/ytdl.")
name "-" version ".tar.bz2")) name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1a9bsq5j9sl2drzkab0hdhnamalpaszw9mz2prz6scrr5dak8g3z")))) "185wwqd60r2rk6lzcvd6sl58589qfqrfnf7lqd6friyj84n9cjc6"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases (delete 'configure)) (list #:phases
#:test-target "test" #~(modify-phases %standard-phases
#:make-flags (delete 'configure)) ; no configure script
(list ,(string-append "CC=" (cc-for-target)) #:test-target "test"
(string-append "PREFIX=" (assoc-ref %outputs "out")) #:make-flags
"exif=1" #~(list (string-append "CC=" #$(cc-for-target))
"inotify=1"))) (string-append "PREFIX=" #$output)
"exif=1"
"inotify=1"
"magic=1")))
(native-inputs (native-inputs
(list perl perl-test-command)) (list perl perl-test-command))
(inputs (list curl (inputs (list curl

View file

@ -839,19 +839,6 @@ JPEG 2000 Reference Software.")
(home-page "https://github.com/uclouvain/openjpeg") (home-page "https://github.com/uclouvain/openjpeg")
(license license:bsd-2))) (license license:bsd-2)))
(define-public openjpeg-1
(package (inherit openjpeg)
(name "openjpeg")
(version "1.5.2")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://sourceforge/openjpeg.mirror/" version "/"
name "-" version ".tar.gz"))
(sha256
(base32 "11waq9w215zvzxrpv40afyd18qf79mxc28fda80bm3ax98cpppqm"))))))
(define-public giflib (define-public giflib
(package (package
(name "giflib") (name "giflib")
@ -1270,7 +1257,7 @@ language bindings to VIGRA.")
(define-public libwebp (define-public libwebp
(package (package
(name "libwebp") (name "libwebp")
(version "1.2.0") (version "1.2.2")
(source (source
(origin (origin
;; No tarballs are provided for >0.6.1. ;; No tarballs are provided for >0.6.1.
@ -1281,14 +1268,14 @@ language bindings to VIGRA.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1rgblphsd56033w7lpkrzl7m5w0fi7wavxri1ayzlg8fhpmmqp4k")))) "1khqkm5j9aiii9jfsbxzzyz3x33sifzcx537cyjyb3a2g2rl969k"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("freeglut" ,freeglut) (list freeglut
("giflib" ,giflib) giflib
("libjpeg" ,libjpeg-turbo) libjpeg-turbo
("libpng" ,libpng) libpng
("libtiff" ,libtiff))) libtiff))
(native-inputs (native-inputs
(list autoconf automake libtool)) (list autoconf automake libtool))
(arguments (arguments
@ -1323,9 +1310,7 @@ channels.")
(build-system gnu-build-system) (build-system gnu-build-system)
(propagated-inputs (propagated-inputs
;; These are all in the 'Libs.private' field of libmng.pc. ;; These are all in the 'Libs.private' field of libmng.pc.
`(("lcms" ,lcms) (list lcms libjpeg-turbo zlib))
("libjpeg" ,libjpeg-turbo)
("zlib" ,zlib)))
(home-page "https://www.libmng.com/") (home-page "https://www.libmng.com/")
(synopsis "Library for handling MNG files") (synopsis "Library for handling MNG files")
(description (description
@ -1809,7 +1794,7 @@ parsing, viewing, modifying, and saving this metadata.")
(define-public flameshot (define-public flameshot
(package (package
(name "flameshot") (name "flameshot")
(version "0.10.2") (version "12.1.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1819,7 +1804,7 @@ parsing, viewing, modifying, and saving this metadata.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"07n98pp5i6i51g7a4vqwbd6xarihzl7r714r2knvw2zn5mlj55dd")))) "1p7gqs5vqzbddlgl38lbanchwb14m6lx8f2cn2c5p0vyqwvqqv52"))))
(build-system qt-build-system) (build-system qt-build-system)
(native-inputs (native-inputs
(list qttools)) (list qttools))

View file

@ -4,7 +4,7 @@
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Boris A. Dekshteyn <boris.dekshteyn@gmail.com> ;;; Copyright © 2020 Boris A. Dekshteyn <boris.dekshteyn@gmail.com>
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; ;;;
@ -31,6 +31,7 @@
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages aspell) #:use-module (gnu packages aspell)
#:use-module (gnu packages bash)
#:use-module (gnu packages bdw-gc) #:use-module (gnu packages bdw-gc)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages check) #:use-module (gnu packages check)
@ -50,55 +51,59 @@
#:use-module (gnu packages ghostscript) #:use-module (gnu packages ghostscript)
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages pkg-config)) #:use-module (gnu packages pkg-config)
#:use-module (srfi srfi-1))
(define-public inkscape ;;; A variant of Inkscape intended to be bumped only on core-updates, to avoid
(package ;;; rebuilding 2k+ packages through dblatex.
(name "inkscape") (define-public inkscape/stable
(version "1.1.1") (hidden-package
(source (package
(origin (name "inkscape")
(method url-fetch) (version "1.1.1")
(uri (string-append "https://media.inkscape.org/dl/" (source
"resources/file/" (origin
"inkscape-" version ".tar.xz")) (method url-fetch)
(sha256 (uri (string-append "https://media.inkscape.org/dl/"
(base32 "1bvqg5xfs3m6r7qfdhmgzwhd1hx8wvg3nhvhmalwzcdm6ffhpjmf")) "resources/file/"
(modules '((guix build utils) "inkscape-" version ".tar.xz"))
(ice-9 format))) (sha256
(snippet (base32 "1bvqg5xfs3m6r7qfdhmgzwhd1hx8wvg3nhvhmalwzcdm6ffhpjmf"))
'(begin (modules '((guix build utils)
(let-syntax (ice-9 format)))
;; XXX: The build system doesn't currently support using (snippet
;; system libraries over bundled ones (see: '(begin
;; https://gitlab.com/inkscape/inkscape/issues/876). (let-syntax
((unbundle ;; XXX: The build system doesn't currently support using
(syntax-rules () ;; system libraries over bundled ones (see:
((_ (name source-dir use-pkg-config?) ...) ;; https://gitlab.com/inkscape/inkscape/issues/876).
(begin ((unbundle
;; Delete bundled source directories. (syntax-rules ()
(delete-file-recursively source-dir) ... ((_ (name source-dir use-pkg-config?) ...)
(substitute* '("src/CMakeLists.txt" (begin
"src/3rdparty/CMakeLists.txt") ;; Delete bundled source directories.
(((string-append ".*add_subdirectory\\(" (delete-file-recursively source-dir) ...
(basename source-dir) "\\).*")) (substitute* '("src/CMakeLists.txt"
"") ...) "src/3rdparty/CMakeLists.txt")
;; Remove bundled entries from INKSCAPE_TARGET_LIBS. (((string-append ".*add_subdirectory\\("
(substitute* "src/CMakeLists.txt" (basename source-dir) "\\).*"))
(((string-append name "_LIB.*")) "") ...) "") ...)
;; Register the external libraries, so that their ;; Remove bundled entries from INKSCAPE_TARGET_LIBS.
;; headers are added to INKSCAPE_INCS_SYS and their (substitute* "src/CMakeLists.txt"
;; shared libraries added to INKSCAPE_LIBS. (((string-append name "_LIB.*")) "") ...)
(if use-pkg-config? ;; Register the external libraries, so that their
(let* ((width (string-length "pkg_check_modules(")) ;; headers are added to INKSCAPE_INCS_SYS and their
(indent (string-join (make-list width " ") ""))) ;; shared libraries added to INKSCAPE_LIBS.
(substitute* "CMakeScripts/DefineDependsandFlags.cmake" (if use-pkg-config?
(("^pkg_check_modules\\(INKSCAPE_DEP REQUIRED.*" start) (let* ((width (string-length "pkg_check_modules("))
(string-append start (indent (string-join (make-list width " ") "")))
(format #f "~a~a~%" indent name))))) (substitute* "CMakeScripts/DefineDependsandFlags.cmake"
(substitute* "CMakeScripts/DefineDependsandFlags.cmake" (("^pkg_check_modules\\(INKSCAPE_DEP REQUIRED.*" start)
(("^find_package\\(Iconv REQUIRED\\).*" start) (string-append start
(string-append (format #f " (format #f "~a~a~%" indent name)))))
(substitute* "CMakeScripts/DefineDependsandFlags.cmake"
(("^find_package\\(Iconv REQUIRED\\).*" start)
(string-append (format #f "
find_path(~a_INCLUDE_DIR NAMES ~:*~a/~:*~a.h ~:*~a.h) find_path(~a_INCLUDE_DIR NAMES ~:*~a/~:*~a.h ~:*~a.h)
if(NOT ~:*~a_INCLUDE_DIR) if(NOT ~:*~a_INCLUDE_DIR)
message(FATAL_ERROR \"~:*~a headers not found\") message(FATAL_ERROR \"~:*~a headers not found\")
@ -112,125 +117,170 @@ if(NOT ~:*~a_LIB)
else() else()
list(APPEND INKSCAPE_LIBS ~:*~a_LIB) list(APPEND INKSCAPE_LIBS ~:*~a_LIB)
endif()~%~%" endif()~%~%"
name) name)
start)))) ... start)))) ...
;; Fix the references to the headers of the ;; Fix the references to the headers of the
;; unbundled libraries. ;; unbundled libraries.
(substitute* (find-files "." "\\.h$|\\.cpp$") (substitute* (find-files "." "\\.h$|\\.cpp$")
(((string-append "#include (\"|<)3rdparty/" (((string-append "#include (\"|<)3rdparty/"
(basename source-dir)) _ quote) (basename source-dir)) _ quote)
(string-append "#include " quote (string-append "#include " quote
(basename source-dir))) (basename source-dir)))
...)))))) ...))))))
(unbundle ("2geom" "src/3rdparty/2geom" #t) (unbundle ("2geom" "src/3rdparty/2geom" #t)
;; libcroco cannot be unbundled as it is heavily ;; libcroco cannot be unbundled as it is heavily
;; modified (see: ;; modified (see:
;; https://gitlab.com/inkscape/inkscape/issues/876#note_276114904). ;; https://gitlab.com/inkscape/inkscape/issues/876#note_276114904).
;; ("croco" "src/3rdparty/libcroco" #t) ;; ("croco" "src/3rdparty/libcroco" #t)
;; FIXME: Unbundle the following libraries once they ;; FIXME: Unbundle the following libraries once they
;; have been packaged. ;; have been packaged.
;; ("cola" "src/3rdparty/adaptagrams/libcola") ;; ("cola" "src/3rdparty/adaptagrams/libcola")
;; ("avoid" "src/3rdparty/adaptagrams/libavoid") ;; ("avoid" "src/3rdparty/adaptagrams/libavoid")
;; ("vpsc" "src/3rdparty/adaptagrams/libvpsc") ;; ("vpsc" "src/3rdparty/adaptagrams/libvpsc")
;; libuemf cannot be unbundled as it slightly modified ;; libuemf cannot be unbundled as it slightly modified
;; from upstream (see: ;; from upstream (see:
;; https://gitlab.com/inkscape/inkscape/issues/973). ;; https://gitlab.com/inkscape/inkscape/issues/973).
;; ("uemf" "src/3rdparty/libuemf" #f) ;; ("uemf" "src/3rdparty/libuemf" #f)
;; FIXME: libdepixelize upstream is ancient and doesn't ;; FIXME: libdepixelize upstream is ancient and doesn't
;; build with a recent lib2geom ;; build with a recent lib2geom
;; (see: https://bugs.launchpad.net/libdepixelize/+bug/1862458). ;; (see: https://bugs.launchpad.net/libdepixelize/+bug/1862458).
;;("depixelize" "src/3rdparty/libdepixelize") ;;("depixelize" "src/3rdparty/libdepixelize")
("autotrace" "src/3rdparty/autotrace" #t))) ("autotrace" "src/3rdparty/autotrace" #t)))
;; Lift the requirement on the double-conversion library, as ;; Lift the requirement on the double-conversion library, as
;; it is only needed by lib2geom, which is now unbundled. ;; it is only needed by lib2geom, which is now unbundled.
(substitute* "CMakeScripts/DefineDependsandFlags.cmake" (substitute* "CMakeScripts/DefineDependsandFlags.cmake"
((".*find_package\\(DoubleConversion.*") "")))))) ((".*find_package\\(DoubleConversion.*") ""))))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:test-target "check" ;otherwise some test binaries are missing `(#:test-target "check" ;otherwise some test binaries are missing
#:imported-modules (,@%cmake-build-system-modules #:imported-modules (,@%cmake-build-system-modules
(guix build glib-or-gtk-build-system)) (guix build glib-or-gtk-build-system))
#:modules ((guix build cmake-build-system) #:modules ((guix build cmake-build-system)
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
(guix build utils)) (guix build utils))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib-or-gtk:%standard-phases (assoc-ref glib-or-gtk:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file)) 'generate-gdk-pixbuf-loaders-cache-file))
(add-after 'unpack 'patch-icon-cache-generator (add-after 'unpack 'patch-icon-cache-generator
(lambda _ (lambda _
(substitute* "share/icons/application/CMakeLists.txt" (substitute* "share/icons/application/CMakeLists.txt"
(("gtk-update-icon-cache") "true")))) (("gtk-update-icon-cache") "true"))))
(add-after 'unpack 'disable-latex-export-tests (add-after 'unpack 'disable-latex-export-tests
;; FIXME: For some reason the test.pdf_tex file generated by the ;; FIXME: For some reason the test.pdf_tex file generated by the
;; "--export-latex" lacks "some text" in its content when run in ;; "--export-latex" lacks "some text" in its content when run in
;; the build environment. Skip the related tests. ;; the build environment. Skip the related tests.
(lambda _ (lambda _
(substitute* "testfiles/cli_tests/CMakeLists.txt" (substitute* "testfiles/cli_tests/CMakeLists.txt"
(("add_cli_test\\(export-latex") (("add_cli_test\\(export-latex")
"message(TEST_DISABLED: export-latex")))) "message(TEST_DISABLED: export-latex"))))
(add-after 'unpack 'set-home (add-after 'unpack 'set-home
;; Mute Inkscape warnings during tests. ;; Mute Inkscape warnings during tests.
(lambda _ (lambda _
(setenv "HOME" (getcwd)))) (setenv "HOME" (getcwd))))
;; Move the check phase after the install phase, as when run in the ;; Move the check phase after the install phase, as when run in the
;; tests, Inkscape relies on files that are not yet installed, such ;; tests, Inkscape relies on files that are not yet installed, such
;; as the "share/inkscape/ui/units.xml" file. ;; as the "share/inkscape/ui/units.xml" file.
(delete 'check) (delete 'check)
(add-after 'install 'check (add-after 'install 'check
(assoc-ref %standard-phases 'check)) (assoc-ref %standard-phases 'check))
(add-after 'install 'glib-or-gtk-compile-schemas (add-after 'install 'glib-or-gtk-compile-schemas
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
(add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
(add-after 'install 'wrap-program (add-after 'install 'wrap-program
;; Ensure Python is available at runtime. ;; Ensure Python is available at runtime.
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/inkscape") (wrap-program (string-append out "/bin/inkscape")
`("GUIX_PYTHONPATH" ":" prefix `("GUIX_PYTHONPATH" ":" prefix
(,(getenv "GUIX_PYTHONPATH")))))))))) (,(getenv "GUIX_PYTHONPATH"))))))))))
(inputs (inputs
`(("aspell" ,aspell) `(("aspell" ,aspell)
("autotrace" ,autotrace) ("autotrace" ,autotrace)
("gdl" ,gdl-minimal) ("gdl" ,gdl-minimal)
("gtkmm" ,gtkmm-3) ("gtkmm" ,gtkmm-3)
("gtk" ,gtk+) ("gtk" ,gtk+)
("gtkspell3" ,gtkspell3) ("gtkspell3" ,gtkspell3)
("gsl" ,gsl) ("gsl" ,gsl)
("poppler" ,poppler) ("poppler" ,poppler)
("lib2geom" ,lib2geom) ("lib2geom" ,lib2geom)
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libxml2" ,libxml2) ("libxml2" ,libxml2)
("libxslt" ,libxslt) ("libxslt" ,libxslt)
("libgc" ,libgc) ("libgc" ,libgc)
("libsoup" ,libsoup-minimal-2) ("libsoup" ,libsoup-minimal-2)
("libcdr" ,libcdr) ("libcdr" ,libcdr)
("libvisio" ,libvisio) ("libvisio" ,libvisio)
("libwpd" ,libwpd) ("libwpd" ,libwpd)
("libwpg" ,libwpg) ("libwpg" ,libwpg)
("freetype" ,freetype) ("freetype" ,freetype)
("popt" ,popt) ("popt" ,popt)
("potrace" ,potrace) ("potrace" ,potrace)
("lcms" ,lcms) ("lcms" ,lcms)
("boost" ,boost) ("boost" ,boost)
("python" ,python-wrapper) ("python" ,python-wrapper)
("python-scour" ,python-scour) ("python-scour" ,python-scour)
("python-pyserial" ,python-pyserial) ("python-pyserial" ,python-pyserial)
("python-numpy" ,python-numpy) ("python-numpy" ,python-numpy)
("python-lxml" ,python-lxml))) ("python-lxml" ,python-lxml)))
(native-inputs (native-inputs
(list imagemagick ;for tests (list imagemagick ;for tests
intltool intltool
`(,glib "bin") `(,glib "bin")
googletest googletest
perl perl
pkg-config)) pkg-config))
(home-page "https://inkscape.org/") (home-page "https://inkscape.org/")
(synopsis "Vector graphics editor") (synopsis "Vector graphics editor")
(description "Inkscape is a vector graphics editor. What sets Inkscape (description "Inkscape is a vector graphics editor. What sets Inkscape
apart is its use of Scalable Vector Graphics (SVG), an XML-based W3C standard, apart is its use of Scalable Vector Graphics (SVG), an XML-based W3C standard,
as the native format.") as the native format.")
(license license:gpl3+))) ;see the file COPYING (license license:gpl3+)))) ;see the file COPYING
(define-public inkscape
(package
(inherit inkscape/stable)
(name "inkscape")
(version "1.2")
(source
(origin
(inherit (package-source inkscape/stable))
(method url-fetch)
(uri (string-append "https://media.inkscape.org/dl/"
"resources/file/"
"inkscape-" version ".tar.xz"))
(sha256
(base32 "1bg6rlflzhq726kpcwazfscm02liammjvzpyxmj5d52l4la336wd"))))
(build-system cmake-build-system)
(arguments
(substitute-keyword-arguments (package-arguments inkscape/stable)
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'disable-problematic-tests
;; The UnionOutside and UnionOutsideSwap tests fail, comparing
;; e.g. the result "M 0 1.5 V 0 H 2 V 2 H 0.5 V 2.5 H 0 V 2 V 1.5 H
;; 0.5 V 2 z" to the expected string "M 0 0 V 1.5 V 2 V 2.5 H 0.5 V
;; 2 H 2 V 0 z" (see:
;; https://gitlab.com/inkscape/inkscape/-/issues/3689).
(lambda _
(substitute* "testfiles/src/path-boolop-test.cpp"
(("PathBoolopTest, UnionOutside(Swap)?.*" all)
(string-append all " GTEST_SKIP();\n")))))
(replace 'wrap-program
;; Ensure Python is available at runtime.
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/inkscape")
`("GUIX_PYTHONPATH" prefix
(,(getenv "GUIX_PYTHONPATH")))
;; Wrapping GDK_PIXBUF_MODULE_FILE allows Inkscape to load
;; its own icons in pure environments.
`("GDK_PIXBUF_MODULE_FILE" =
(,(getenv "GDK_PIXBUF_MODULE_FILE")))))))))))
(inputs (modify-inputs (package-inputs inkscape/stable)
(append bash-minimal
librsvg))) ;for the pixbuf loader
(properties (alist-delete 'hidden? (package-properties inkscape/stable)))))

View file

@ -194,21 +194,20 @@ Conferencing} and @acronym{ICB, Internet Citizen's Band}.")
(define-public weechat (define-public weechat
(package (package
(name "weechat") (name "weechat")
(version "3.5") (version "3.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://weechat.org/files/src/weechat-" (uri (string-append "https://weechat.org/files/src/weechat-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"030p1264rrbr5sbyww85xq0cm5zzdmnpz89y9z90ppcfxi64x47a")))) "1ppj676gwh67krq92xnfkmh3qnwbz8d51djsscxw013x7cdxg1cx"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(outputs '("out" "doc")) (outputs '("out" "doc"))
(native-inputs (native-inputs
`(("gettext-minimal" ,gettext-minimal) `(("gettext-minimal" ,gettext-minimal)
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
,@(if (or (target-x86-64?) ,@(if (target-x86?)
(target-x86-32?))
`(("ruby-asciidoctor" ,ruby-asciidoctor)) `(("ruby-asciidoctor" ,ruby-asciidoctor))
'()) '())
;; For tests. ;; For tests.
@ -231,16 +230,14 @@ Conferencing} and @acronym{ICB, Internet Citizen's Band}.")
(arguments (arguments
`(#:configure-flags `(#:configure-flags
(list "-DENABLE_PHP=OFF" (list "-DENABLE_PHP=OFF"
,@(if (or (target-x86-64?) ,@(if (target-x86?)
(target-x86-32?))
'("-DENABLE_MAN=ON" '("-DENABLE_MAN=ON"
"-DENABLE_DOC=ON") "-DENABLE_DOC=ON")
'()) '())
"-DENABLE_TESTS=ON") ; make test fails otherwise "-DENABLE_TESTS=ON") ; make test fails otherwise
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
,@(if (or (target-x86-64?) ,@(if (target-x86?)
(target-x86-32?))
'((add-after 'install 'move-doc '((add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))

View file

@ -46,19 +46,8 @@
(base32 (base32
"1q6x9c5x4x0x4q11iygldsmxdyzhz1mb4n8im76glwsgqsqyjs80")))) "1q6x9c5x4x0x4q11iygldsmxdyzhz1mb4n8im76glwsgqsqyjs80"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; TODO(staging): Unconditionally move inputs to native-inputs.
(native-inputs (native-inputs
(if (%current-target-system) (list gettext-minimal perl python-wrapper))
`(("python" ,python-wrapper)
("perl" ,perl)
("gettext" ,gettext-minimal))
'()))
(inputs
`(,@(if (%current-target-system)
'()
`(("gettext" ,gettext-minimal)
("perl" ,perl)
("python" ,python-wrapper)))))
(synopsis "Various ISO standards") (synopsis "Various ISO standards")
(description (description
"This package provides lists of various ISO standards (e.g. country, "This package provides lists of various ISO standards (e.g. country,

View file

@ -181,7 +181,7 @@
"--enable-muxer=h263" "--enable-muxer=h263"
"--enable-muxer=h264" "--enable-muxer=h264"
"--enable-muxer=hevc" "--enable-muxer=hevc"
; "--enable-muxer=matroska" "--enable-muxer=matroska"
"--enable-muxer=webm" "--enable-muxer=webm"
"--enable-muxer=ogg" "--enable-muxer=ogg"
"--enable-muxer=pcm_s16be" "--enable-muxer=pcm_s16be"

View file

@ -13711,7 +13711,7 @@ network protocols, and core version control algorithms.")
(define-public abcl (define-public abcl
(package (package
(name "abcl") (name "abcl")
(version "1.8.0") (version "1.9.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -13719,7 +13719,7 @@ network protocols, and core version control algorithms.")
version "/abcl-src-" version ".tar.gz")) version "/abcl-src-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0zr5mmqyj484vza089l8vc88d07g0m8ymxzglvar3ydwyvi1x1qx")) "0scqq5c7201xhp0g6i4y3m2nrk6l5any1nisiscbsd48ya25qax1"))
(patches (patches
(search-patches (search-patches
"abcl-fix-build-xml.patch")))) "abcl-fix-build-xml.patch"))))
@ -13766,6 +13766,10 @@ Lisp language featuring both an interpreter and a compiler, running in the
JVM. It supports JSR-223 (Java scripting API): it can be a scripting engine JVM. It supports JSR-223 (Java scripting API): it can be a scripting engine
in any Java application. Additionally, it can be used to implement (parts of) in any Java application. Additionally, it can be used to implement (parts of)
the application using Java to Lisp integration APIs.") the application using Java to Lisp integration APIs.")
(native-search-paths
(list (search-path-specification
(variable "XDG_DATA_DIRS")
(files '("share")))))
(license (list license:gpl2+ (license (list license:gpl2+
;; named-readtables is released under 3 clause BSD ;; named-readtables is released under 3 clause BSD
license:bsd-3 license:bsd-3

View file

@ -1119,6 +1119,49 @@ both the 256 color and 24 bit true color extensions, and the different text
styles available to terminals.") styles available to terminals.")
(license license:expat))) (license license:expat)))
(define-public julia-csv
(package
(name "julia-csv")
(version "0.10.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaData/CSV.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "15kjh5wa6ravb10n9n9bsh7ggmarqmw8s57p35l4b3dqk9d8qafh"))))
(build-system julia-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-reference-to-cat
(lambda _
(substitute* "test/basics.jl"
;; XXXX: Test fail to read using CVS.Chunk; raising:
;; ArgumentError: unable to iterate chunks from input file source
;; Disable and the two tests using it.
(("chunks = CSV.Chunks") "# chunks = CSV.Chunks")
(("@test sum\\(length, chunks\\) == 10000")
"# @test sum(length, chunks) == 10000")
(("@test Tables.partitions\\(chunks\\) === chunks")
"# @test Tables.partitions(chunks) === chunks")))))))
(propagated-inputs
(list julia-codeczlib
julia-filepathsbase
julia-inlinestrings
julia-parsers
julia-pooledarrays
julia-sentinelarrays
julia-tables
julia-weakrefstrings))
(home-page "https://github.com/JuliaData/CSV.jl")
(synopsis "Fast and flexible delimited-file reader/writer")
(description "This package provides reader/writer for delimited text data,
as comma-delimited (csv), tab-delimited (tsv), or otherwise.")
(license license:expat)))
(define-public julia-dataapi (define-public julia-dataapi
(package (package
(name "julia-dataapi") (name "julia-dataapi")
@ -2847,6 +2890,32 @@ negative infinity in Julia.")
interfaces with @file{.ini} files.") interfaces with @file{.ini} files.")
(license license:expat))) (license license:expat)))
(define-public julia-inlinestrings
(package
(name "julia-inlinestrings")
(version "1.1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaStrings/InlineStrings.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1dcdpxlphjliqlnkcri7mhg9bqqzpsdj80h9gkw8xhzr3ls473zr"))))
(build-system julia-build-system)
(propagated-inputs
(list julia-parsers))
(home-page "https://github.com/JuliaStrings/InlineStrings.jl")
(synopsis "Fixed-width string types")
(description "This package provides a set of custom string types of
various fixed sizes. Each inline string is a custom primitive type and can
benefit from being stack friendly by avoiding allocations/heap tracking in the
GC. When used in an array, the elements are able to be stored inline since
each one has a fixed size. Currently support inline strings from 1 byte up to
255 bytes.")
(license license:expat)))
(define-public julia-interpolations (define-public julia-interpolations
(package (package
(name "julia-interpolations") (name "julia-interpolations")
@ -3086,7 +3155,7 @@ extensions to the iterator interface.")
(define-public julia-json (define-public julia-json
(package (package
(name "julia-json") (name "julia-json")
(version "0.21.1") (version "0.21.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -3095,7 +3164,7 @@ extensions to the iterator interface.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1f9k613kbknmp4fgjxvjaw4d5sfbx8a5hmcszmp1w9rqfqngjx9m")))) (base32 "1l2p852sxq6h5fif3dqshvbw17gb06jmq2nkr88spvp7s0n0nslz"))))
(build-system julia-build-system) (build-system julia-build-system)
(propagated-inputs (propagated-inputs
(list julia-datastructures (list julia-datastructures
@ -3946,7 +4015,7 @@ performance critical code.")
(define-public julia-parsers (define-public julia-parsers
(package (package
(name "julia-parsers") (name "julia-parsers")
(version "1.1.0") (version "2.2.4")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -3955,7 +4024,7 @@ performance critical code.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1gz3drd5334xrbx2ms33hiifkd0q1in4ywc92xvrkq3xgzdjqjdk")))) (base32 "09v2x9yd1wdp74hzsf6218dpamlf2hb5nkmixqb4bc53ll8hpw4i"))))
(build-system julia-build-system) (build-system julia-build-system)
(home-page "https://github.com/JuliaData/Parsers.jl") (home-page "https://github.com/JuliaData/Parsers.jl")
(synopsis "Fast parsing machinery for basic types in Julia") (synopsis "Fast parsing machinery for basic types in Julia")
@ -4771,6 +4840,27 @@ user-friendly, scratch spaces should, in general, not be used for a storing
files that the user must interact with through a file browser.") files that the user must interact with through a file browser.")
(license license:expat))) (license license:expat)))
(define-public julia-sentinelarrays
(package
(name "julia-sentinelarrays")
(version "1.3.13")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaData/SentinelArrays.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h3vpz7xskbf2a60imdg0irwh9bybkahjpnb6b3wyk0j9a97nqkr"))))
(build-system julia-build-system)
(home-page "https://github.com/JuliaData/SentinelArrays.jl")
(synopsis "Array types using sentinel values")
(description "This package provides @code{SentinelArray{T}} that wraps an
@code{AbstractArray} of type @code{T}, and accepts a sentinel and value
argument.")
(license license:expat)))
(define-public julia-showoff (define-public julia-showoff
(package (package
(name "julia-showoff") (name "julia-showoff")
@ -5625,7 +5715,7 @@ useful in order to support @code{VersionNumber} comparisons applied to
(define-public julia-weakrefstrings (define-public julia-weakrefstrings
(package (package
(name "julia-weakrefstrings") (name "julia-weakrefstrings")
(version "1.1.0") (version "1.4.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -5634,10 +5724,11 @@ useful in order to support @code{VersionNumber} comparisons applied to
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "14h1vdnc3rx87w6v2rr59lgb4kai2hd1wzqpxhmzsi8karg2z219")))) (base32 "1ca94bpsjqrap2y9wlixspnisfkcms7aax0kpv7yn0v2vs9481wk"))))
(build-system julia-build-system) (build-system julia-build-system)
(propagated-inputs (propagated-inputs
(list julia-dataapi (list julia-dataapi
julia-inlinestrings
julia-parsers)) julia-parsers))
(home-page "https://github.com/JuliaData/WeakRefStrings.jl") (home-page "https://github.com/JuliaData/WeakRefStrings.jl")
(synopsis "Efficient string representation and transfer in Julia") (synopsis "Efficient string representation and transfer in Julia")

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