me
/
guix
Archived
1
0
Fork 0

Merge branch 'staging' into core-updates

master
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 '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-state '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-extensions 'scheme-indent-function 1))
(eval . (put 'with-parameters 'scheme-indent-function 1))
@ -155,7 +157,31 @@
;; preceding symbol is one of these.
(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)))
(texinfo-mode . ((indent-tabs-mode . nil)
(fill-column . 72))))

1
.gitignore vendored
View File

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

View File

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

View File

@ -274,6 +274,7 @@ AC_CONFIG_FILES([Makefile
guix/config.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([pre-inst-env:build-aux/pre-inst-env.in],
[chmod +x pre-inst-env])

View File

@ -29,6 +29,7 @@ choice.
* Tracking Bugs and Patches:: Keeping it all organized.
* Commit Access:: Pushing to the official repository.
* Updating the Guix Package:: Updating the Guix package definition.
* Writing Documentation:: Improving documentation in GNU Guix.
* Translating Guix:: Make Guix speak your native language.
@end menu
@ -224,8 +225,7 @@ $ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))'
@noindent
@cindex REPL
@cindex read-eval-print loop
@dots{} and for a REPL (@pxref{Using Guile Interactively,,, guile, Guile
Reference Manual}):
@dots{} and for a REPL (@pxref{Using Guix Interactively}):
@example
$ ./pre-inst-env guile
@ -278,8 +278,8 @@ prepared Guile object (@file{.go}) files.
You can run @command{make} automatically as you work using
@command{watchexec} from the @code{watchexec} package. For example,
to build again each time you update a package file, you can run
@samp{watchexec -w gnu/packages make -j4}.
to build again each time you update a package file, run
@samp{watchexec -w gnu/packages -- make -j4}.
@node 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:
@example
guix package -i emacs guile emacs-geiser emacs-geiser-guile
guix install emacs guile emacs-geiser emacs-geiser-guile
@end example
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
curly braces which are the basic special characters in Texinfo
(@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.
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
contributions in the form of patches as produced by @code{git
format-patch} sent to the @email{guix-patches@@gnu.org} mailing list
(@pxref{submitting patches,, Submitting patches to a project, git, Git
User Manual}). Contributors are encouraged to take a moment to set some
Git repository options (@pxref{Configuring Git}) first, which can
improve the readability of patches. Seasoned Guix developers may also
want to look at the section on commit access (@pxref{Commit Access}).
(@pxref{Submitting patches to a project,,, git, Git User Manual}).
Contributors are encouraged to take a moment to set some Git repository
options (@pxref{Configuring Git}) first, which can improve the
readability of patches. Seasoned Guix developers may also want to look
at the section on commit access (@pxref{Commit Access}).
This mailing list is backed by a Debbugs instance, which allows us to
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
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 l10n
@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{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.
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}.
@end itemize
For a more detailed introduction, check out
@uref{http://www.troubleshooters.com/codecorn/scheme_guile/hello.htm, Scheme
at a Glance}, by Steve Litt.
@quotation Going further
Scheme is a language that has been widely used to teach programming and
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
Interpretation of Computer Programs'', by Harold Abelson and Gerald Jay
Sussman, with Julie Sussman. You'll find a
@uref{https://mitpress.mit.edu/sites/default/files/sicp/index.html, free copy
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/,
videos of the lectures by the authors}. The book is available in Texinfo
format as the @code{sicp} Guix package. Go ahead, run @code{guix install
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
available}.
@itemize
@item
@uref{https://spritely.institute/static/papers/scheme-primer.html, @i{A
Scheme Primer}}, by Christine Lemmer-Webber and the Spritely Institute.
@item
@uref{http://www.troubleshooters.com/codecorn/scheme_guile/hello.htm,
@i{Scheme at a Glance}}, by Steve Litt.
@item
@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
@url{https://schemers.org/}.
@end quotation
@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:
@example shell
guix environment linux-libre -- make localmodconfig
guix shell -D linux-libre -- make localmodconfig
@end example
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.
@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
stuff!
@end enumerate

View File

@ -30,7 +30,7 @@ Copyright @copyright{} 2015, 2016 Mathieu Lirzin@*
Copyright @copyright{} 2014 Pierre-Antoine Rault@*
Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@*
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, 2017, 2018, 2021 Chris Marusich@*
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 Karl Hallsby@*
Copyright @copyright{} 2022 Justin Veilleux@*
Copyright @copyright{} 2022 Reily Siegel@*
Permission is granted to copy, distribute and/or modify this document
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.
* G-Expressions:: Manipulating build expressions.
* Invoking guix repl:: Programming Guix in Guile.
* Using Guix Interactively:: Fine-grain interaction at the REPL.
Defining Packages
@ -7099,6 +7101,7 @@ package definitions.
* The Store Monad:: Purely functional interface to the store.
* G-Expressions:: Manipulating build expressions.
* Invoking guix repl:: Programming Guix in Guile
* Using Guix Interactively:: Fine-grain interaction at the REPL.
@end menu
@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''
the @code{RUNPATH} of ELF binaries (@code{.so} shared libraries as well
as executables) previously installed by the @code{install} phase.
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}.
@xref{phase-validate-runpath, the @code{validate-runpath} phase}, for
details.
@item #:substitutable?
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?}
is false), copying them to the @code{debug} output when available
(@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
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
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:
@code{run-in-store}, and @code{enter-store-monad}. The former is used
new ``commands'' to make it easier to deal with monadic procedures:
@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:
@example
@ -10885,6 +10898,9 @@ scheme@@(guile-user)>
Note that non-monadic values cannot be returned in the
@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 @code{(guix monads)} module and are described below.
@ -11777,7 +11793,8 @@ lines at the top of the script:
@code{!#}
@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
$ 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.
@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 *********************************************************************
@node Utilities
@chapter Utilities
@ -14002,6 +14145,10 @@ The @option{--input-simplification} option described below provides
fine-grain control over when inputs should be simplified.
@end table
@item --list-stylings
@itemx -l
List and describe the available styling rules and exit.
@item --load-path=@var{directory}
@itemx -L @var{directory}
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:
@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://guix.example.org'... 100.0%
/gnu/store/@dots{}-openssl-1.0.2d contents differ:
@ -14977,18 +15126,20 @@ updating substitutes from 'https://guix.example.org'... 100.0%
@dots{}
6,406 store items were analyzed:
- 4,749 (74.1%) were identical
- 525 (8.2%) differed
- 1,132 (17.7%) were inconclusive
5 store items were analyzed:
- 2 (40.0%) were identical
- 3 (60.0%) differed
- 0 (0.0%) were inconclusive
@end smallexample
@noindent
In this example, @command{guix challenge} first scans the store to
determine the set of locally-built derivations---as opposed to store
items that were downloaded from a substitute server---and then queries
all the substitute servers. It then reports those store items for which
the servers obtained a result different from the local build.
In this example, @command{guix challenge} queries all the substitute
servers for each of the fives packages specified on the command line.
It then reports those store items for which the servers obtained a
result different from the local build (if it exists) and/or different
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
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:
@example
$ guix challenge @var{package}
guix challenge @var{package}
@end example
@noindent
where @var{package} is a package specification such as
@code{guile@@2.0} or @code{glibc:debug}.
The general syntax is:
@example
guix challenge @var{options} [@var{packages}@dots{}]
guix challenge @var{options} @var{argument}@dots{}
@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
that of a server-provided substitute, or among substitutes provided by
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 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
@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
explicitly.
@item @code{extra-content}
A string or list of strings to add to the upstream block.
@end table
@end deftp
@ -35082,6 +35307,11 @@ allocation plan in the database.
An association list of hooks. These provide a way to execute arbitrary
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})
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
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
The @emph{running} system generation---referred to by
@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
@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
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.
* SSH: Secure Shell. Setting up the secure shell client.
* Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
@end menu
@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 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
Available @code{home-bash-extension} fields are:
@ -39953,6 +40213,37 @@ format.
@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
@section Invoking @code{guix home}
@ -40192,6 +40483,17 @@ install anything.
Describe the current home generation: its file name, as well as
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
List a summary of each generation of the home environment available on
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:
@example
$ guix home list-generations 10d
guix home list-generations 10d
@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
Generate a @dfn{home environment} from the packages in the default
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}
@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
@TeX{} Live packaging is still very much work in progress, but you can
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!
[ -d "/etc/profile.d" ] || mkdir /etc/profile.d # Just in case
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="$HOME/.config/guix/current"
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"
# 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
GUIX_LOCPATH="$GUIX_PROFILE/lib/locale"
export GUIX_LOCPATH
@ -522,7 +534,7 @@ export GUIX_LOCPATH
[ -f "$GUIX_PROFILE/etc/profile" ] && . "$GUIX_PROFILE/etc/profile"
# 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
}

View File

@ -25,6 +25,16 @@
(channel-news
(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")
(title
(en "@option{-L} option of @command{guix refresh} repurposed")

View File

@ -43,21 +43,6 @@ determined."
(repository-close! repository))
#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)
"Return a list of tests for perform, using Guix built from SOURCE, a channel
instance."

310
etc/teams.scm.in 100644
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
;;; Copyright © 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -19,10 +20,9 @@
(define-module (gnu build chromium-extension)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (gnu packages chromium)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages tls)
#:use-module (gnu packages xorg)
#:use-module (gnu packages node-xyz)
#:use-module (guix build-system trivial)
#: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")
(with-imported-modules '((guix build utils))
#~(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))
(let ((chromium #$(file-append ungoogled-chromium "/bin/chromium"))
(xvfb #$(file-append xorg-server "/bin/Xvfb"))
(let ((crx3 #+(file-append node-crx3 "/bin/crx3"))
(packdir (string-append (getcwd) "/extension")))
(mkdir packdir)
(copy-recursively (ungexp package package-output) packdir
;; Ensure consistent file modification times.
#:keep-mtime? #t)
(system (string-append xvfb " :1 &"))
(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))
(invoke crx3 "--keyPath" #$signing-key packdir)
(copy-file (string-append packdir ".crx") #$output))))
#:local-build? #t))

View File

@ -52,6 +52,8 @@
read-partition-uuid
read-luks-partition-uuid
cleanly-unmounted-ext2?
bind-mount
system*/tty
@ -193,6 +195,23 @@ NUL terminator, return the size of the bytevector."
if DEVICE does not contain an ext2 file system."
(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)
"Return the UUID of ext2 superblock SBLOCK as a 16-byte bytevector."
(sub-bytevector sblock 104 16))
@ -220,6 +239,11 @@ errors. Otherwise, fix only those considered safe to repair automatically."
(2 'reboot-required)
(_ '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.

View File

@ -46,6 +46,7 @@
home-run-on-change-service-type
home-provenance-service-type
environment-variable-shell-definitions
home-files-directory
xdg-configuration-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
@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)
"Return a file that can be sourced by a POSIX compliant shell which
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.
For any other, value variable will be set to the @code{value} and
exported."
(define (warn-about-duplicate-defenitions)
(define (warn-about-duplicate-definitions)
(fold
(lambda (x acc)
(when (equal? (car x) (car acc))
@ -192,15 +221,18 @@ exported."
(sort vars (lambda (a b)
(string<? (car a) (car b))))))
(warn-about-duplicate-defenitions)
(warn-about-duplicate-definitions)
(with-monad
%store-monad
(return
`(("setup-environment"
;; TODO: It's necessary to source ~/.guix-profile too
;; 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
GUIX_PROFILE=\"$HOME_ENVIRONMENT/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 ;;
esac
"
(append-map
(match-lambda
((key . #f)
'())
((key . #t)
(list "export " key "\n"))
((key . value)
(list "export " key "=" value "\n")))
vars)))))))
" port)
(display
#$(environment-variable-shell-definitions vars)
port)))))))))
(define home-environment-variables-service-type
(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-posix-env-vars field-name val)
#~(string-append
#$@(map
(match-lambda
((key . #f)
"")
((key . #t)
#~(string-append "export " #$key "\n"))
((key . value)
#~(string-append "export " #$key "=" #$value "\n")))
val)))
(environment-variable-shell-definitions val))
;;;
@ -192,9 +183,9 @@ another process for example)."))
(mixed-text-file
"zprofile"
"\
# Setups system and user profiles and related variables
# Set up the system, user profile, and related variables.
source /etc/profile
# Setups home environment profile
# Set up the home environment profile.
source ~/.profile
# 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
"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
# Setups home environment profile
# Set up the home environment profile.
if [ -f ~/.profile ]; then source ~/.profile; fi
# Honor per-interactive-shell startup file
@ -555,9 +546,9 @@ with text blocks from other extensions and the base service."))
((key . #f)
"")
((key . #t)
#~(string-append "set " #$key "\n"))
#~(string-append "set -x " #$key "\n"))
((key . value)
#~(string-append "set " #$key " " #$value "\n")))
#~(string-append "set -x " #$key " " #$value "\n")))
val)))
(define-configuration home-fish-configuration

View File

@ -19,6 +19,10 @@
(define-module (gnu image)
#:use-module (guix platform)
#:use-module (guix records)
#:use-module (guix diagnostics)
#:use-module (guix i18n)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:export (partition
partition?
partition-device
@ -70,19 +74,38 @@
(label partition-label (default #f))
(uuid partition-uuid (default #f))
(flags partition-flags (default '()))
(initializer partition-initializer (default #f)))
(initializer partition-initializer (default #f))) ;gexp | #f
;;;
;;; 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>
image make-image
image?
(name image-name ;symbol
(default #f))
(format image-format) ;symbol
(format image-format ;symbol
(sanitize validate-image-format))
(platform image-platform ;<platform>
(default #f))
(size image-size ;size in bytes as integer
@ -90,7 +113,8 @@
(operating-system image-operating-system ;<operating-system>
(default #f))
(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>
(default '()))
(compression? image-compression? ;boolean

View File

@ -17,7 +17,7 @@
# Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
# 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, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# 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/symlink-manager.scm \
%D%/home/services/fontutils.scm \
%D%/home/services/guix.scm \
%D%/home/services/shells.scm \
%D%/home/services/shepherd.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-9-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.8-libsanitizer-mode-field.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/coda-use-system-libs.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-io-fix.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/clucene-contribs-lib.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/cursynth-wave-rand.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-helpful-fix-docstring-test.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-lispy-fix-thread-last-test.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/fpc-reproducibility.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/fuse-overlapping-headers.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/libcyaml-libyaml-compat.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/libgnome-encoding.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/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.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-lpad-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/maven-generate-component-xml.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-4426.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/mhash-keygen-test-segfault.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-dlltool-temp-prefix.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/mosaicatcher-unbundle-htslib.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/mumps-build-parallelism.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/pango-skip-libthai-test.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/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/pokerth-boost.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
%D%/packages/patches/pthreadpool-system-libraries.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/portmidi-modular-build.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-CVE-2014-3618.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/ruby-mustache-1.1.1-fix-race-condition-tests.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/i3status-rust-enable-unstable-features.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-skip-unreliable-tests.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/tcsh-fix-autotest.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/xdg-desktop-portal-wlr-harcoded-length.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-qxl-fix-build.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"))
(sha256
(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
(list #:configure-flags #~'("--localstatedir=/var")
#:make-flags #~'("GUILE_AUTO_COMPILE=0")
@ -2133,7 +2144,7 @@ command.")
(native-inputs
;; For icons.
(modify-inputs (package-native-inputs wpa-supplicant)
(prepend imagemagick inkscape)))
(prepend imagemagick inkscape/stable)))
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'chdir
@ -2267,24 +2278,23 @@ network, which causes enabled computers to power on.")
(define-public dmidecode
(package
(name "dmidecode")
(version "3.3")
(version "3.4")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://savannah/dmidecode/dmidecode-"
version ".tar.xz"))
(sha256
(base32 "0m8lzg9rf1qssasiix672bxk5qwms90561g8hfkkhk31h2kkgiw2"))))
(base32 "04i2ahvqinkrnzfsbswplv9wff36xf9b3snvriwrjz26v18sijs3"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no 'check' target
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "prefix="
(assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
(list #:tests? #f ; no 'check' target
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "prefix=" #$output))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
(home-page "https://www.nongnu.org/dmidecode/")
(synopsis "Read hardware information from the BIOS")
(description
@ -2624,6 +2634,9 @@ various ways that may be running with too much privilege.")
(base32
"1mlc25sd5rgj5xmzcllci47inmfdw7cp185fday6hc9rwqkqmnaw"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags
#~(list "BUILD_INFO=\"(Guix)\"")))
(inputs (list libcap-ng))
(home-page "https://www.smartmontools.org/")
(synopsis "S.M.A.R.T. harddisk control and monitoring tools")
@ -4183,7 +4196,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
(version "3.3.15-1")
(version "3.3.19-1")
(source
(origin
(method git-fetch)
@ -4192,7 +4205,7 @@ Python loading in HPC environments.")
(commit version)))
(file-name (git-file-name real-name version))
(sha256
(base32 "02zy94bd6ayfl9y7ka6gk32q254k49cbq3a6wgi31r2fcvybyrf7"))))
(base32 "0g5m43cj4534gb181zy1hwjz5il88xibf8psxw8a4s6jnaq1zdlk"))))
(build-system trivial-build-system)
(inputs
`(("bash" ,bash-minimal)

View File

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

View File

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

View File

@ -918,6 +918,51 @@ astronomy and astrophysics.")
to access online Astronomical data. Each web service has its own sub-package.")
(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
(package
(name "python-photutils")

View File

@ -37,6 +37,7 @@
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Arjan Adriaanse <arjan@adriaan.se>
;;; Copyright © 2022 Juliana Sims <jtsims@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1158,7 +1159,7 @@ envelope follower, distortion effects, tape effects and more.")
(define-public snapcast
(package
(name "snapcast")
(version "0.24.0")
(version "0.26.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1167,7 +1168,7 @@ envelope follower, distortion effects, tape effects and more.")
(file-name (git-file-name name version))
(sha256
(base32
"13yz8alplnqwkcns3mcli01qbyy6l3h62xx0v71ygcrz371l4g9g"))))
"091gf3k1xv3k0m0kf2apr9bwiifw2czjcksd3vzwy544sfgrya08"))))
(build-system cmake-build-system)
(arguments
'(#: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.")
(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
(package
(inherit faust)
(version "2.5.23")
(version "2.41.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/grame-cncm/faust/"
@ -1925,15 +1960,29 @@ also play midifiles using a Soundfont.")
"/faust-" version ".tar.gz"))
(sha256
(base32
"1yz5jnr76hh7rmxkpdi7gyrw1wp4gyqfpq8zyl97qdi5ga5gjznq"))))
(build-system gnu-build-system)
"0gk8ifxrbykq7ay0nvjns8fjryhp0wfhv5npgrl8xpgw9wfmw53j"))))
(build-system cmake-build-system)
(arguments
(substitute-keyword-arguments (package-arguments faust)
((#:make-flags flags)
`(list (string-append "prefix=" (assoc-ref %outputs "out"))
"world"))))
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
;; 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
`(("llvm" ,llvm-3.8)
`(("llvm" ,llvm)
("which" ,which)
("xxd" ,xxd)
("ctags" ,emacs-minimal) ; for ctags
@ -2748,6 +2797,38 @@ add functionality to support the needs of increasingly powerful audio
software.")
(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
(package
(name "lv2-mda-piano")
@ -2771,7 +2852,7 @@ software.")
(inputs
(list lv2 lvtk))
(native-inputs
(list pkg-config))
(list pkg-config ttl2c))
(native-search-paths
(list (search-path-specification
(variable "LV2_PATH")
@ -2794,14 +2875,14 @@ software.")
(synopsis "LV2 port of the mda EPiano plugin")
(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
;; on Python 2.
(let ((commit "a73feabe772f9650aa071e6a4df660e549ab7c48")
(revision "0"))
(package
(name "lvtk")
(version (git-version "1.2.0" revision commit))
(version (git-version "2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@ -2823,6 +2904,49 @@ extensions into easy to use C++ classes. It is the successor of
lv2-c++-tools.")
(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
(package
(name "openal")
@ -5713,3 +5837,33 @@ source and extracts a 24-bit high resolution WAV file. It handles both DST
and DSD streams.")
(home-page "https://tari.in/www/software/odio-sacd/")
(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+)
(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
(let ((revision "1")
(commit "c8ddc8472f8efcadafc1ef53ca1d863415fddd5f"))

View File

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

View File

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

View File

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

View File

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

View File

@ -5523,7 +5523,7 @@ CONFIG_DRM_AMD_DC=y
# CONFIG_DEBUG_KERNEL_DC is not set
# end of Display Engine Configuration
# CONFIG_HSA_AMD is not set
CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
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
# end of Display Engine Configuration
# CONFIG_HSA_AMD is not set
CONFIG_HSA_AMD=y
CONFIG_DRM_NOUVEAU=m
# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
CONFIG_NOUVEAU_DEBUG=5

View File

@ -1189,7 +1189,7 @@ additional snapshots).")
uthash
zlib))
(native-inputs
(list autoconf automake check-0.14 pkg-config))
(list autoconf automake check pkg-config))
(home-page "https://burp.grke.org")
(synopsis "Differential backup and restore")
(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 © 2017 Rene Saavedra <rennes@openmailbox.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.
;;;

View File

@ -63,10 +63,11 @@
#:use-module (gnu packages xml)
#: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*
(delay (module-ref (resolve-interface '(gnu packages commencement))
'gcc-toolchain)))
'gcc-toolchain-12)))
(define-public fio
(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.")
(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
(package
(name "r-aneufinder")
@ -2029,6 +2135,94 @@ calling, plotting, export and analysis from whole-genome single cell
sequencing data.")
(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
(package
(name "r-biocversion")
@ -2746,6 +2940,25 @@ measures for Affymetrix Oligonucleotide Arrays.")
(properties
`((upstream-name . "AffyCompatible")))
(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
(list r-biostrings r-rcurl r-xml))
(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.")
(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
(package
(name "r-edaseq")
@ -3728,14 +3985,14 @@ CAGE.")
(define-public r-ensembldb
(package
(name "r-ensembldb")
(version "2.20.1")
(version "2.20.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ensembldb" version))
(sha256
(base32
"183rs74ngfvn9xz36csch495pqaash90yhhikm73m7b2bc37ziwz"))))
"12n21dcimdhgyjzk33m6xbv0m9ihgyzcf66vr1jr5ycv3rq2s7xc"))))
(build-system r-build-system)
(propagated-inputs
(list r-annotationdbi
@ -4282,13 +4539,13 @@ Binomial data via estimation of latent structure in the natural parameter.")
(define-public r-limma
(package
(name "r-limma")
(version "3.52.1")
(version "3.52.2")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "limma" version))
(sha256
(base32
"193l3z2jv0kr91nl4r64p3jzb2rai9k8akx1zw7303nsnwpiiaay"))))
"0m8p8pqmf48f2zdf3qs66hmychbc58g2hfg1wyxzsv180m6xkk65"))))
(build-system r-build-system)
(home-page "http://bioinf.wehi.edu.au/limma")
(synopsis "Package for linear models for microarray and RNA-seq data")
@ -4605,14 +4862,14 @@ previously been used in XCMS.")
(define-public r-organismdbi
(package
(name "r-organismdbi")
(version "1.38.0")
(version "1.38.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "OrganismDbi" version))
(sha256
(base32
"1xklaiyd4mv9sf9211flq1s68fhdn53y2i4l1k2ib39a4l6y9cyr"))))
"0mxnxj8x4hc21psz39mf7qwvh1fsn6qyjgl5qffk1xxmasf69619"))))
(properties `((upstream-name . "OrganismDbi")))
(build-system r-build-system)
(propagated-inputs
@ -4976,14 +5233,14 @@ tab-delimited (tabix) files.")
(define-public r-restfulr
(package
(name "r-restfulr")
(version "0.0.14")
(version "0.0.15")
(source
(origin
(method url-fetch)
(uri (cran-uri "restfulr" version))
(sha256
(base32
"1sdlz8zl4xvd7cpn1gm86q7jv9v7561gg4wk6y7zybiw37pxghq6"))))
"14p6h0gjknqy5z2fprxw7waf4p0cd2qmp18s7qig4ylqn8gqzzs0"))))
(properties `((upstream-name . "restfulr")))
(build-system r-build-system)
(propagated-inputs
@ -4997,13 +5254,13 @@ tab-delimited (tabix) files.")
(define-public r-rtracklayer
(package
(name "r-rtracklayer")
(version "1.56.0")
(version "1.56.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "rtracklayer" version))
(sha256
(base32
"1d9sak1xrrkcvj0q3vnp6w2k0nx2k2ajhsbq0dyb4nhcghp5w8fd"))))
"10qy9s6253mgj871qfqn03i8yw10mz7id4cxfyf67qxczz2xmjls"))))
(build-system r-build-system)
(arguments
`(#:phases
@ -5289,14 +5546,14 @@ ungapped alignment formats.")
(define-public r-simplifyenrichment
(package
(name "r-simplifyenrichment")
(version "1.6.0")
(version "1.6.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "simplifyEnrichment" version))
(sha256
(base32
"1g3kfa17p60jkk4l34vc5hdq83w082qsxbjvpqw7r9rdd8d79z2q"))))
"0qblgdxmr7zc981529cca3ykakql618q1im6gaxw8pwws5jgpyk6"))))
(properties
`((upstream-name . "simplifyEnrichment")))
(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
(package
(name "r-zellkonverter")
(version "1.6.2")
(version "1.6.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "zellkonverter" version))
(sha256
(base32 "0s1n3impm4k55pac8mr18czylsc30yqcvdfdki4sawk74b2rkx8c"))))
(base32 "0l6v7a2zyxpq2w3vm85z439ldi3ld3pkc3wx95a1vxzbr31cpdzz"))))
(properties `((upstream-name . "zellkonverter")))
(build-system r-build-system)
(propagated-inputs
@ -6481,13 +6738,13 @@ enrichedGO (addGeneIDs).")
(define-public r-matrixgenerics
(package
(name "r-matrixgenerics")
(version "1.8.0")
(version "1.8.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "MatrixGenerics" version))
(sha256
(base32
"0s7s39v9lqniirjgp8lbmffw0c8rsp6bndgzy1zlyh5vivfih0f5"))))
"1liblnpziyyjxzrhdd5d89ilvfqqhbl87h3hsmdm0kwnmc73r37f"))))
(properties
`((upstream-name . "MatrixGenerics")))
(build-system r-build-system)
@ -7618,14 +7875,14 @@ multiplication and calculation of row/column sums or means.")
(define-public r-batchelor
(package
(name "r-batchelor")
(version "1.12.1")
(version "1.12.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "batchelor" version))
(sha256
(base32
"1zyvjr9nwfh0cdqk4kwmr30yhh05picyab1hpnpn737xvn525jfi"))))
"00ix3hvhgalxg63qnynv2waa273jk336lg47k72qwxfzimsxfjxc"))))
(properties `((upstream-name . "batchelor")))
(build-system r-build-system)
(propagated-inputs
@ -8368,17 +8625,22 @@ are standardized and usable by the accompanying mutossGUI package.")
(define-public r-metap
(package
(name "r-metap")
(version "1.3")
(version "1.8")
(source
(origin
(method url-fetch)
(uri (cran-uri "metap" version))
(sha256
(base32
"1jmmmmjiklaxfl604hwqil193ydaghvd5jv8xsr4bx3pzn5i9kvz"))))
"0asmypxfxly4xmcjf3yzid5zqlzg88z0brij2splfk4avsl035gf"))))
(build-system r-build-system)
(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")
(synopsis "Meta-analysis of significance values")
(description
@ -8743,14 +9005,14 @@ All the visualization methods are developed based on ggplot2 graphics.")
(define-public r-clusterprofiler
(package
(name "r-clusterprofiler")
(version "4.4.2")
(version "4.4.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "clusterProfiler" version))
(sha256
(base32
"07fbc3d06990qy1qcaqqgm5ma2l0h08bwfkqrnlfd9f2xcppdywd"))))
"0k5jhry0j6wa7779n3hrw4ld4bvyahpgpbwi2a0g704m3dd3mqp5"))))
(properties
`((upstream-name . "clusterProfiler")))
(build-system r-build-system)
@ -9290,14 +9552,14 @@ type and symbol colors.")
(define-public r-genomicscores
(package
(name "r-genomicscores")
(version "2.8.0")
(version "2.8.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "GenomicScores" version))
(sha256
(base32
"0zq9k4189dlc14f9rknsc1ffhpjzb2f4fzdaszfdbnd4rr43b79i"))))
"12rcxw69an1d5q7ar58xy8s871l47imw2nm08j054ivxslx8597j"))))
(properties `((upstream-name . "GenomicScores")))
(build-system r-build-system)
(propagated-inputs
@ -9311,6 +9573,7 @@ type and symbol colors.")
r-genomeinfodb
r-genomicranges
r-hdf5array
r-httr
r-iranges
r-rhdf5
r-s4vectors
@ -10705,17 +10968,20 @@ packages.")
(define-public r-ropls
(package
(name "r-ropls")
(version "1.28.0")
(version "1.28.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ropls" version))
(sha256
(base32
"1i9g32mjknrd2lbz2nisc7nr0gk9byx9aik1i7xdwmq4ndxf8rf7"))))
"07gpx15r8c3wljiwxnff2zp7wxbhzz9r7njk8zg8hpy2q5qm3i6c"))))
(build-system r-build-system)
(propagated-inputs
(list r-biobase r-multidataset))
(list r-biobase
r-multiassayexperiment
r-multidataset
r-summarizedexperiment))
(native-inputs
(list r-knitr)) ; for vignettes
(home-page "https://dx.doi.org/10.1021/acs.jproteome.5b00354")
@ -10742,17 +11008,23 @@ coefficients).")
(define-public r-biosigner
(package
(name "r-biosigner")
(version "1.24.0")
(version "1.24.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biosigner" version))
(sha256
(base32
"11w28nlz0f06idbna5k9xs891w516401l1zab5gg7s0z3xxaki4f"))))
"0vdv2by3qv7y8vzr8qgg7apwwgsa0fhlfrhzns7g3nas7883c89m"))))
(build-system r-build-system)
(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
(list r-knitr))
(home-page "https://bioconductor.org/packages/biosigner/")
@ -10812,14 +11084,14 @@ annotations.")
(define-public r-rsubread
(package
(name "r-rsubread")
(version "2.10.2")
(version "2.10.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Rsubread" version))
(sha256
(base32
"1pvyx8nxv10s816hgxrnw60hp9rlqjdgjq3ajpzqxgxmmlhnk0v0"))))
"155h25gbagqns7wpriil17li0jkdd1z1pcz0dlnikdqj4saf97rl"))))
(properties `((upstream-name . "Rsubread")))
(build-system r-build-system)
(inputs (list zlib))
@ -14679,14 +14951,14 @@ by Ernst and Kellis.")
(define-public r-ggbio
(package
(name "r-ggbio")
(version "1.44.0")
(version "1.44.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ggbio" version))
(sha256
(base32
"1lvms07ba99nzf10gpn50wjca84nj5jrb6902z069p2bfi4xyd27"))))
"0iyhjalwq1jmldpn20iv8l2kmz6sm20ddry2yz2zn7yq0wszp3vg"))))
(build-system r-build-system)
(arguments
`(#:phases
@ -15363,14 +15635,14 @@ all RNA-Seq libraries of each species integrated in Bgee.")
(define-public r-bgeedb
(package
(name "r-bgeedb")
(version "2.22.0")
(version "2.22.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BgeeDB" version))
(sha256
(base32
"093zk43x8i9ajaqsdhndkyal3dizllr3g85ziavb3k73dzvarzsc"))))
"1f6lrazaibbz21sqvj59rq6ps9m1riw2y0kyidbn29mxf4ibwh3k"))))
(properties `((upstream-name . "BgeeDB")))
(build-system r-build-system)
(propagated-inputs
@ -15832,14 +16104,14 @@ scoring subnetwork.")
(define-public r-bionetstat
(package
(name "r-bionetstat")
(version "1.16.0")
(version "1.16.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioNetStat" version))
(sha256
(base32
"0f387j35lj32ryiw48jz8gc08al2lmmv9zvbbgyjq9wmqlca3dfb"))))
"0zs6pymvxb95sji0rnnzaz3whj7hsvj2kl4n4gzj7w1q0prbfpb2"))))
(properties `((upstream-name . "BioNetStat")))
(build-system r-build-system)
(propagated-inputs
@ -16169,13 +16441,13 @@ estimates, etc.")
(define-public r-tcgabiolinks
(package
(name "r-tcgabiolinks")
(version "2.24.1")
(version "2.24.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "TCGAbiolinks" version))
(sha256
(base32 "0kw4lrg8xm0ipj7f7h1rwfj7a8mknkril1pn05x08mx13f7p5p14"))))
(base32 "0visvfhzaf0p1rb5vjkmw1c91zfxpks8nl9nbl9xlnpm8lkmmkms"))))
(properties `((upstream-name . "TCGAbiolinks")))
(build-system r-build-system)
(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.")
(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
(package
(name "python-htsget")
@ -7167,6 +7205,64 @@ sequence.")
auROC analysis.")
(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
(package
(name "r-snapatac")
@ -13520,6 +13616,53 @@ transcription factors, gene regulatory networks and cell types from
single-cell RNA-seq data.")
(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
(package
(name "vbz-compression")
@ -14459,7 +14602,7 @@ The output is in SAM format.")
(propagated-inputs
(list libxml2))
(native-inputs
(list check-0.14 swig))
(list check swig))
(home-page "http://sbml.org/Software/libSBML")
(synopsis "Process SBML files and data streams")
(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.")
(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
(package
(name "wfmash")

View File

@ -14,6 +14,8 @@
;;; Copyright © 2021 David Dashyan <mail@davie.li>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; 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.
;;;
@ -48,6 +50,7 @@
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
#:use-module (gnu packages flex)
#:use-module (gnu packages gcc)
#:use-module (gnu packages perl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages guile)
@ -63,59 +66,111 @@
#:use-module (gnu packages web)
#: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
(package
(name "tcc") ;aka. "tinycc"
(version "0.9.27")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/tinycc/tcc-"
version ".tar.bz2"))
(sha256
(base32
"177bdhwzrnqgyrdv1dwvpd04fcxj68s5pm1dzwny6359ziway8yy"))))
(build-system gnu-build-system)
(native-inputs (list perl texinfo))
(arguments
`(#:configure-flags (list (string-append "--elfinterp="
(assoc-ref %build-inputs "libc")
,(glibc-dynamic-linker))
(string-append "--crtprefix="
(assoc-ref %build-inputs "libc")
"/lib")
(string-append "--sysincludepaths="
(assoc-ref %build-inputs "libc")
"/include:"
(assoc-ref %build-inputs
"kernel-headers")
"/include:{B}/include")
(string-append "--libpaths="
(assoc-ref %build-inputs "libc")
"/lib")
,@(if (string-prefix? "armhf-linux"
(or (%current-target-system)
(%current-system)))
`("--triplet=arm-linux-gnueabihf")
'()))
#:test-target "test"))
(native-search-paths
(list (search-path-specification
(variable "CPATH")
(files '("include")))
(search-path-specification
(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
;; There's currently no release fixing <https://issues.guix.gnu.org/52140>.
(let ((revision "1")
(commit "a83b28568596afd8792fd58d1a5bd157fc6b6634"))
(package
(name "tcc") ;aka. "tinycc"
(version (git-version "0.9.27" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "git://repo.or.cz/tinycc.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"01znw86fg73x3k0clafica4b6glbhz69p588kvp766i0zgvs68dh"))))
(build-system gnu-build-system)
(native-inputs (list perl texinfo))
(arguments
`(#:configure-flags (list (string-append "--elfinterp="
(assoc-ref %build-inputs
"libc")
,(glibc-dynamic-linker))
(string-append "--crtprefix="
(assoc-ref %build-inputs
"libc") "/lib")
(string-append "--sysincludepaths="
(assoc-ref %build-inputs
"libc") "/include:"
(assoc-ref %build-inputs
"kernel-headers")
"/include:{B}/include")
(string-append "--libpaths="
(assoc-ref %build-inputs
"libc") "/lib")
,@(if (string-prefix? "armhf-linux"
(or (%current-target-system)
(%current-system)))
`("--triplet=arm-linux-gnueabihf")
'()))
#:test-target "test"))
(native-search-paths
(list (search-path-specification
(variable "CPATH")
(files '("include")))
(search-path-specification
(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
standard.")
(home-page "http://www.tinycc.org/")
;; An attempt to re-licence tcc under the Expat licence is underway but not
;; (if ever) complete. See the RELICENSING file for more information.
(license license:lgpl2.1+)))
(home-page "http://www.tinycc.org/")
;; An attempt to re-licence tcc under the Expat licence is underway but not
;; (if ever) complete. See the RELICENSING file for more information.
(license license:lgpl2.1+))))
(define-public pcc
(package
@ -305,6 +360,11 @@ Its three main components are:
(build-system gnu-build-system)
(native-inputs
(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")
(description
"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
string.h, but with a utf8* prefix instead of the str* prefix.")
(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, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; 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, 2021 Stefan Reichoer <stefan@xsteve.at>
;;; 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
(package
(name "libical")
(version "3.0.10")
(version "3.0.14")
(source (origin
(method url-fetch)
(uri (string-append
@ -127,7 +127,7 @@ the <tz.h> library for handling time zones and leap seconds.")
version "/libical-" version ".tar.gz"))
(sha256
(base32
"1d1nqcfilb4k8bc5x85fhnd26l1ski58wpk2nmds6mlxrzkb6czr"))))
"13ycghsi4iv8mnm0xv97bs0x6qvfhdxkw20n3yhcc7bg6n0bg122"))))
(build-system cmake-build-system)
(arguments
'(#: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"
(("http://www.oasis-open.org/docbook/xml/4.3/")
(string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/")))
#t))
"/xml/dtd/docbook/")))))
(add-before 'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
;; 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\""))
(("\\\"/usr/lib/zoneinfo\\\",") "")
(("\\\"/etc/zoneinfo\\\",") "")
(("\\\"/usr/share/lib/zoneinfo\\\"") "")))
#t)))))
(("\\\"/usr/share/lib/zoneinfo\\\"") ""))))))))
(native-inputs
(list docbook-xml-4.3
gobject-introspection
@ -181,13 +179,13 @@ data units.")
(define-public khal
(package
(name "khal")
(version "0.10.4")
(version "0.10.5")
(source (origin
(method url-fetch)
(uri (pypi-uri "khal" version))
(sha256
(base32
"17qj1n2l39pnzk4vjrmql90z7908nivnzcc2g9nj1h31k859inrz"))))
"0xhcrx7lcjk126i2xgqmgb199vd4hxsq34mkdmhdh9ia62nbgvsf"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; The test suite is unreliable. See <https://bugs.gnu.org/44197>
@ -200,8 +198,7 @@ data units.")
(invoke "make" "--directory=doc/" "man")
(install-file
"doc/build/man/khal.1"
(string-append (assoc-ref outputs "out") "/share/man/man1"))
#t)))))
(string-append (assoc-ref outputs "out") "/share/man/man1")))))))
(native-inputs
(list python-setuptools-scm
;; 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
;; module cycles. The below is a quick copy-paste job that must be kept in
;; sync manually. Surely there's a better way…?
(version "3.71")
(version "3.80")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@ -142,7 +142,7 @@ that was originally contributed to Debian.")
"nss-" version ".tar.gz")))
(sha256
(base32
"0ly2l3dv6z5hlxs72h5x6796ni3x1bq60saavaf42ddgv4ax7b4r"))
"0sjbg248kfabv9av2jwkr28fqgj4zjm2nqh9nc16p6p2qz91zgy0"))
;; Create nss.pc and nss-config.
(patches (search-patches "nss-3.56-pkgconfig.patch"
"nss-getcwd-nonnull.patch"

View File

@ -109,6 +109,26 @@ useful list processing procedures for construction, examining, destructuring
and manipulating lists and pairs.")
(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
(package
(name "chicken-srfi-14")
@ -278,3 +298,34 @@ with integers.")
"This package provides a simple testing utility for CHICKEN Scheme.")
(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.
'("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 %debian-revision "debian/102.0.5005.61-1")
@ -328,7 +328,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"1g5ciwzrhg9g13gvhrwqf19djk9jhj1d6nx2f6a8d5ch1mhi2z8s"))))
"00mpmyaa8bqxf1f4vhk1waxhjbhcwab8m1x1vf341al64f6bmr1r"))))
(define %debian-origin
(origin
@ -477,7 +477,7 @@
%chromium-version ".tar.xz"))
(sha256
(base32
"00di0nw6h3kb0qp2wp3ny3zsar1ayn1lyx5zr28dl1h5cwaaxjqf"))
"0wdmy15602qxrb403p8yyx69k7py85fbawdsgap1l6z4h4j2g2p4"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)

View File

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

View File

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

View File

@ -13,6 +13,7 @@
;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2022 Ekaitz Zarraga <ekaitz@elenq.tech>
;;;
;;; This file is part of GNU Guix.
;;;
@ -722,7 +723,13 @@ MesCC-Tools), and finally M2-Planet.")
(inherit tcc-boot0)
(name "tcc-boot")
(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)
(inputs '())
(propagated-inputs '())

View File

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

View File

@ -24,6 +24,7 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix gexp)
#:use-module (guix licenses)
#:use-module (guix utils)
#:use-module (gnu packages)
@ -55,19 +56,30 @@
(base32 "12g5ilcnymx6i45z3359yds3cgd2dfqjyncfm92hqlymzps41yvr"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list "--enable-nmcompat"
"--enable-polkit" ; Polkit doesn't need to be present at build time.
"--enable-iwd"
"--enable-openconnect"
"--enable-openvpn"
"--enable-vpnc"
"--enable-l2tp"
"--localstatedir=/var"
(string-append
"--with-dbusconfdir=" (assoc-ref %outputs "out") "/etc")
(string-append
"--with-dbusdatadir=" (assoc-ref %outputs "out") "/share"))))
(list #:configure-flags
#~(list "--enable-nmcompat"
;; PolKit doesn't need to be present at build time.
"--enable-polkit"
"--enable-iwd"
"--enable-l2tp"
"--enable-openconnect"
"--enable-openvpn"
"--enable-vpnc"
"--localstatedir=/var"
(string-append "--with-l2tp="
#$(this-package-input "xl2tpd")
"/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
(list pkg-config
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.")
(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
(package
(name "rust-kstring")
@ -32249,6 +32275,31 @@ pseudo-random text.")
(license (list license:asl2.0
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
(package
(name "rust-lmdb-rkv")
@ -44455,6 +44506,31 @@ particularly useful for printing structured recursive data like trees.")
(("rust-termcolor" ,rust-termcolor-0.3)
("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
(package
(name "rust-pretty-assertions")
@ -56347,6 +56423,31 @@ CPUs, as well as raw interfaces to platform-specific instructions.
extensions.")
(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
(package
(name "rust-similar")
@ -57514,6 +57615,78 @@ algorithm. Includes streaming compression and decompression.")
("rust-lazy-static" ,rust-lazy-static-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
(package
(name "rust-snappy-cpp")
@ -65185,6 +65358,36 @@ serializing Rust structures.")
(license (list license:asl2.0
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
(package
(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.")
(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
(package
(name "rust-ttf-parser")

View File

@ -2,9 +2,9 @@
;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; 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 © 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, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
@ -33,6 +33,7 @@
(define-module (gnu packages curl)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils)
@ -63,9 +64,10 @@
(package
(name "curl")
(version "7.82.0")
(replacement curl-7.84.0)
(source (origin
(method url-fetch)
(uri (string-append "https://curl.haxx.se/download/curl-"
(uri (string-append "https://curl.se/download/curl-"
version ".tar.xz"))
(sha256
(base32
@ -139,6 +141,35 @@ tunneling, and so on.")
"See COPYING in the distribution."))
(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
(deprecated-package "curl-minimal" curl))

View File

@ -57,6 +57,7 @@
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -147,6 +148,7 @@
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#: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 terminals)
#:use-module (gnu packages texinfo)
@ -1248,39 +1250,13 @@ pictures, sounds, or video.")
(package
(inherit postgresql-14)
(version "13.6")
(replacement postgresql-13/replacement)
(source (origin
(inherit (package-source postgresql-14))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"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"))))))
"1z37ix80hb2bqa2smh1hbj9r507ypnl3pil43gkqznnlv6ipzz5s"))))))
(define-public postgresql-11
(package
@ -1293,9 +1269,7 @@ pictures, sounds, or video.")
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"1983a7y4y6zhbgh0qcdfkf99445j1zm5q1ncrbkrx555y08y3n9d"))
(patches (search-patches
"postgresql-disable-resolve_symlinks.patch"))))
"1983a7y4y6zhbgh0qcdfkf99445j1zm5q1ncrbkrx555y08y3n9d"))))
(native-inputs
(modify-inputs (package-native-inputs postgresql-13)
(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".
`(("bc" ,bc)
("bash:include" ,bash "include")
("check" ,check-0.14)
("check" ,check)
("pkg-config" ,pkg-config)))
(inputs
;; TODO: Add more optional inputs.
@ -1598,14 +1572,14 @@ types are supported, as is encryption.")
(define-public emacs-rec-mode
(package
(name "emacs-rec-mode")
(version "1.8.3")
(version "1.9.0")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"rec-mode-" version ".tar"))
(sha256
(base32
"0lkmvvdj4xx3qhxqggizrcdawav0accyrza2wmhfdq88g2zh5575"))
"1w1q6kh567fd8xismq9i6wr1y893lypd30l452yvydi1qjiq1n6x"))
(snippet '(begin (delete-file "rec-mode.info")))))
(build-system emacs-build-system)
(arguments
@ -4789,3 +4763,35 @@ create design, and edit database file compatible with SQLite.")
;; dual license
(list license:gpl3+
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
;;; 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 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Tanguy Le Carrour <tanguy@bioneland.org>
@ -42,7 +42,7 @@
(define-public radicale
(package
(name "radicale")
(version "3.1.5")
(version "3.1.7")
(source
(origin
;; There are no tests in the PyPI tarball.
@ -52,7 +52,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0wg0dg5bq221c6mj6fq53x82w0hb5hyyi8dqxkf6qnhf99bx8qrw"))))
(base32 "1mv1w9qazbis9ir5shr1ybsfn4cxd3rmxa3ns6kbk23yramlzwhg"))))
(build-system python-build-system)
(arguments
(list

View File

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

View File

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

View File

@ -54,13 +54,13 @@
(define-public python-django-4.0
(package
(name "python-django")
(version "4.0.4")
(version "4.0.6")
(source (origin
(method url-fetch)
(uri (pypi-uri "Django" version))
(sha256
(base32
"1da0vy3nas2m2j50dc5c3s1nv529lagg4c04riipah94hn2pg0af"))))
"1bn3lg68r2bz6rzwnd7y2sin6fi9vahdqdsmamrx6zw2yqzpjym6"))))
(build-system python-build-system)
(arguments
'(#:phases
@ -141,13 +141,13 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
(define-public python-django-3.2
(package
(inherit python-django-4.0)
(version "3.2.13")
(version "3.2.14")
(source (origin
(method url-fetch)
(uri (pypi-uri "Django" version))
(sha256
(base32
"1dn4irl4m21skcqb2mbj55vgryqfqk6wqa8s1c7bmxlv19x4k4vd"))))
"1krg0bfd78mnqly1gzbprssz3bz6xryc2fig0x75la2vifx84wb7"))))
(native-search-paths '()) ;no need for TZDIR
(propagated-inputs
(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
(inputs
`(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
texlive-latex-anysize
texlive-latex-appendix
texlive-latex-bookmark
texlive-latex-changebar
texlive-latex-colortbl
texlive-latex-fancybox
texlive-fancyhdr
texlive-fancyvrb
texlive-latex-float
texlive-latex-footmisc
texlive-hyperref
texlive-latex-jknapltx
texlive-listings
texlive-latex-multirow
texlive-latex-overpic
texlive-pdfpages
texlive-refcount
texlive-subfigure
texlive-titlesec
texlive-wasysym
texlive-latex-anysize
texlive-latex-appendix
texlive-latex-bookmark
texlive-latex-changebar
texlive-latex-colortbl
texlive-latex-fancybox
texlive-fancyhdr
texlive-fancyvrb
texlive-latex-float
texlive-latex-footmisc
texlive-hyperref
texlive-latex-jknapltx
texlive-listings
texlive-latex-multirow
texlive-latex-overpic
texlive-pdfpages
texlive-refcount
texlive-subfigure
texlive-titlesec
texlive-wasysym
texlive-fonts-rsfs
texlive-stmaryrd
texlive-fonts-rsfs
texlive-stmaryrd
texlive-iftex)))
texlive-iftex)))
("imagemagick" ,imagemagick) ;for convert
("inkscape" ,inkscape) ;for svg conversion
("inkscape" ,inkscape/stable) ;for svg conversion
("docbook" ,docbook-xml)
("libxslt" ,libxslt))) ;for xsltproc
(arguments

View File

@ -6,7 +6,7 @@
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Katherine Cox-Buday <cox.katherine.e@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>
;;;
;;; 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))))
(file-name (git-file-name name version))
(sha256
(base32 "1vsl747i3wyy68j4lp4nprwxadbyga8qxlrk892afcd2990zp5mr"))))
(base32 "1vsl747i3wyy68j4lp4nprwxadbyga8qxlrk892afcd2990zp5mr"))
(patches
(search-patches "containerd-create-pid-file.patch"))))
(build-system go-build-system)
(arguments
(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"))
#t)))))
(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.
(propagated-inputs
(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
(base32
"0w0dff3s7wv2d9m78a4jhckiik58q38wx6wpbba5hzbs4yxz35ck"))
(patch-flags (list "-p1" "--directory=binutils"))))
(patches '())))
(arguments
`(;; FIXME: For some reason there are many test failures. It's not
;; obvious how to fix the failures.

View File

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

View File

@ -34,6 +34,8 @@
;;; Copyright © 2022 Konstantinos Agiannis <agiannis.kon@gmail.com>
;;; Copyright © 2022 Greg Hogan <code@greghogan.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.
;;;
@ -1864,12 +1866,20 @@ an embedded event driven algorithm.")
(name "trilinos-serial-xyce")
(version "12.12.1")
(source
(origin (method url-fetch)
(uri (string-append "https://trilinos.org/oldsite/download/files/trilinos-"
version "-Source.tar.gz"))
(sha256
(base32
"1zgrcksrcbmyy79mbdv0j4j4sh0chpigxk8vcrrwgaxyxwxxhrvw"))))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/trilinos/Trilinos")
(commit (string-append "trilinos-release-"
(string-map (lambda (chr)
(case chr
((#\.) #\-)
(else chr)))
version)))))
(file-name (git-file-name name version))
(sha256
(base32
"1smz3wlpfyjn0czmpl8bj4hw33p1zi9nnfygpsx7jl1523nypa1n"))))
(build-system cmake-build-system)
(arguments
`(#:out-of-source? #t
@ -1881,8 +1891,7 @@ an embedded event driven algorithm.")
(lambda* (#:key outputs #:allow-other-keys)
(delete-file-recursively
(string-append (assoc-ref outputs "out")
"/lib/cmake/tribits"))
#t)))
"/lib/cmake/tribits")))))
#:configure-flags
(list "-DCMAKE_CXX_FLAGS=-O3 -fPIC"
"-DCMAKE_C_FLAGS=-O3 -fPIC"
@ -1910,13 +1919,8 @@ an embedded event driven algorithm.")
"-DTPL_ENABLE_UMFPACK=ON"
"-DTPL_ENABLE_BLAS=ON"
"-DTPL_ENABLE_LAPACK=ON")))
(native-inputs
`(("fortran" ,gfortran)
("swig" ,swig)))
(inputs
`(("boost" ,boost)
("lapack" ,lapack)
("suitesparse" ,suitesparse)))
(native-inputs (list gfortran swig))
(inputs (list boost lapack suitesparse))
(home-page "https://trilinos.org")
(synopsis "Engineering and scientific problems algorithms")
(description
@ -2854,20 +2858,23 @@ data structures and to operate on them.")
(license license:gpl3+)))
(define-public pcb2gcode
;; Take some additional commits after v2.4.0 to fix build against
;; geos 3.10.1.
(let ((commit "ae41f9fe41e57ee5d0cced6c3b3c8aea9c3f5392"))
(package
(name "pcb2gcode")
(version "2.1.0")
(version (git-version "2.4.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pcb2gcode/pcb2gcode")
(commit (string-append "v" version))
(commit commit)
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32
"0nzglcyh6ban27cc73j4l7w7r9k38qivq0jz8iwnci02pfalw4ry"))))
"1r1qmvpn5ffi2xpq2gigwsk8kn79s4s2ywfvicwf8i7rzwhkdf17"))))
(build-system gnu-build-system)
(inputs
(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
for the milling of PCBs. It also includes an autoleveller for the automatic
dynamic calibration of the milling depth.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public syscall-intercept
;; 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.")
(home-page "https://xschem.sourceforge.io/stefan/index.html")
(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)))
#:tests? #f)) ; tests require running dbus service
(native-inputs
`(("check" ,check-0.14)
`(("check" ,check)
("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs

View File

@ -3,7 +3,7 @@
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017, 2018, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; 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 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com>
@ -428,7 +428,9 @@ from a mounted file system.")
"INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools"
(string-append "CC=" #$(cc-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
#~(modify-phases %standard-phases
(delete 'configure) ; no configure script
@ -444,16 +446,18 @@ from a mounted file system.")
,(list (string-append #$output "/sbin")
(string-append #$coreutils-minimal "/bin")
(string-append #$gawk "/bin")
(string-append #$util-linux "/bin"))))))))
#:tests? #f)) ; XXX 6 valgrind tests fail
(string-append #$util-linux "/bin"))))))))))
(native-inputs
(list pkg-config
;; For tests.
python-pytest
valgrind
;; For generating documentation with rst2man.
python
python-docutils))
(append
(list pkg-config
;; For tests.
python-pytest)
(if (member (%current-system) (package-supported-systems valgrind))
(list valgrind)
'())
;; For generating documentation with rst2man.
(list python
python-docutils)))
(inputs
(list eudev
keyutils

View File

@ -29,6 +29,7 @@
;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -62,6 +63,7 @@
#:use-module (guix deprecation)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (srfi srfi-26)
#:use-module (gnu packages)
#:use-module (gnu packages aidc)
#:use-module (gnu packages autotools)
@ -1350,6 +1352,126 @@ information.")
(home-page "https://grisbi.org")
(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
(let ((commit "bff7fdfe436c727982cc553bdfb29a9021b423b0")
(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"))
(package
(name name)
(version "1.0")
(version "1.1")
(source
(origin
(method git-fetch)
@ -234,7 +234,7 @@ broadband modem as found, for example, on PinePhone.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0srqkhd9b1mq4qkqk31dlrzy4mhljr49bzjxm0saylsbwhgxq31s"))))
(base32 "0xlnhl965286kvizyjm571qbhj3l5n71a02dmbmgxzcqapzgi9wk"))))
(build-system gnu-build-system)
(native-inputs
`(,@(if (and (not (string-prefix? "riscv64" (%current-system)))

View File

@ -49,6 +49,7 @@
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@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.
;;;
@ -91,6 +92,26 @@
#:use-module (gnu packages python-xyz)
#: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
(package
(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
(package
(name "font-victor-mono")
(version "1.4.2")
(version "1.5.3")
(source (origin
(method url-fetch/zipbomb)
(uri (string-append
"https://github.com/rubjo/victor-mono/raw/v"
version
"/public/VictorMonoAll.zip"))
(sha256 "01260vja0d22mcvkzspf0xnl7b851r0265arqkm12q1vagzyxvkm")))
(sha256 "1axiwxz8l46cc60jfp2la8a9qpj866236lz3dc5l6m35r9as56l3")))
(build-system font-build-system)
(synopsis "Font with support for italics and ligatures")
(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.
(package
(name "libinput")
(version "1.19.2")
(version "1.19.4")
(source (origin
(method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/"
"libinput-" version ".tar.xz"))
(sha256
(base32
"10xqk05mkvsyxfxpn3vwkwb7j22d38wlbg1l1k37f6pfyc59zhqg"))))
"0h5lz54rrl48bhi3vki6s08m6rn2h62rlf08dhgchdm9nmqaaczz"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=false")

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; 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>
;;;
;;; 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,
viewing Hebrew texts, etc. It was written for Hebrew but Arabic (or other BiDi
languages) should work equally well.")
(properties
'((release-monitoring-url . "https://deb.debian.org/debian/pool/main/b/bidiv")))
(license gpl2+)))

View File

@ -1209,24 +1209,25 @@ to create fully featured games and multimedia programs in the python language.")
license:lgpl2.1+))))
(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")
;;(renpy-version "8.0.0")
(commit "1705c6e3004dcb1daf859560bcd52eb093e97d45"))
(renpy-version "8.0.0"))
(package
(inherit python-pygame)
(name "python-pygame-sdl2")
(version (git-version real-version "0" commit))
(version (string-append real-version "-for-renpy-" renpy-version))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/renpy/pygame_sdl2")
(commit commit)))
(file-name (git-file-name name version))
(sha256 (base32 "1g0arhpd59zypspk36sgajf1kzavppfkv766vifvxar60968rrjn"))))
(method url-fetch)
(uri (string-append "https://www.renpy.org/dl/" renpy-version
"/pygame_sdl2-" version ".tar.gz"))
(sha256 (base32 "0majf64pdfba5byjlv41pgsdmwvy09hw3m7143jz3kc1wjd2gaw8"))
(modules '((guix build utils)))
(snippet
'(begin
;; drop generated sources
(delete-file-recursively "gen")
(delete-file-recursively "gen3")
(delete-file-recursively "gen-static")))))
(build-system python-build-system)
(arguments
`(#: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.")
(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
(package
(name "python-renpy")
(version (git-version "7.99.99" "0" %renpy-commit))
(version "8.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/renpy/renpy")
(commit %renpy-commit)))
(file-name (git-file-name name version))
(sha256 (base32 "11g7hqhw4gbkx5ib2wsawrznmjbn8r9zkgf2sg39z56h96y8wfbn"))
(method url-fetch)
(uri (string-append "https://www.renpy.org/dl/" version
"/renpy-" version "-source.tar.bz2"))
(sha256 (base32 "09z3r16j4cxddkb50ghmi4xp0s05s15q4pzdmfajy85ignwqhjdi"))
(modules '((guix build utils)))
(patches
(search-patches
@ -1280,7 +1276,10 @@ developed mainly for Ren'py.")
'(with-directory-excursion "module"
;; drop fribidi sources
(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)
(arguments
`(#: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"))
(copy-recursively "gui"
(string-append out "/share/renpy/gui"))
(copy-recursively "sdk-fonts"
(string-append out "/share/renpy/sdk-fonts"))
(mkdir-p (string-append out "/bin"))
(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 zamfofex <zamfofex@twdb.moe>
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1009,7 +1010,7 @@ allows users to brew while offline.")
(define-public corsix-th
(package
(name "corsix-th")
(version "0.65.1")
(version "0.66")
(source
(origin
(method git-fetch)
@ -1018,7 +1019,7 @@ allows users to brew while offline.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0hw92ln9jm9v55drmbfqjng58yshgwfpv7fqynryrg3gvg8zhbvh"))))
(base32 "0sgsvhqgiq6v1v5am7ghja8blhlrj0y1arvq6xq1j5fwa7c59ihs"))))
(build-system cmake-build-system)
(arguments
`(#: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.")
(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
(package
(name "falltergeist")
@ -8033,14 +7994,17 @@ ncurses for text display.")
(define-public naev
(package
(name "naev")
(version "0.9.2")
(version "0.9.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/naev/naev/releases/download/v"
version "/naev-" version "-source.tar.xz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/naev/naev")
(commit (string-append "v" version))
(recursive? #t))) ; for game data
(file-name (git-file-name name version))
(sha256
(base32 "1p6424n2rgrlb0h71gvww40vxs1h583d9im8bzgmv6dhgclbg0nl"))))
(base32 "0hvgxzvph9s5gdzlj5kjnz2d2j7bi8s11k7i6540837mnppah18j"))))
(build-system meson-build-system)
(arguments
;; 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:expat ;edtaa3func.c
license:bsd-2 ;distance_field.c
license:bsd-3 ;perlin.c
))))
license:bsd-3)))) ;perlin.c
(define-public frotz-dumb-terminal
(package
@ -12246,53 +12209,48 @@ game.") ;thanks to Debian for description
(delete-file-recursively "src/third_party/websocketpp")
(substitute* "pokerth_lib.pro"
(("src/third_party/websocketpp")
""))
#t))))
""))))
(patches (search-patches "pokerth-boost.patch"))))
(build-system qt-build-system)
(inputs
`(("boost" ,boost)
("curl" ,curl)
("gsasl" ,gsasl)
("libgcrypt" ,libgcrypt)
("libircclient" ,libircclient)
("protobuf" ,protobuf-2) ; remove package when no longer needed
("qtbase" ,qtbase-5)
("sdl" ,(sdl-union (list sdl sdl-mixer)))
("sqlite" ,sqlite)
("tinyxml" ,tinyxml)
("websocketpp" ,websocketpp)
("zlib" ,zlib)))
(list boost
curl
gsasl
libgcrypt
libircclient
protobuf-2 ;remove package when no longer needed
qtbase-5
(sdl-union (list sdl sdl-mixer))
sqlite
tinyxml
websocketpp
zlib))
(arguments
`(#:tests? #f ; No test suite
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "." "\\.pro$")
(("/opt/gsasl")
(assoc-ref inputs "gsasl"))
(("\\$\\$\\{PREFIX\\}/include/libircclient")
(search-input-directory inputs "/include/libircclient"))
(("LIB_DIRS =")
(string-append "LIB_DIRS = "
(assoc-ref inputs "boost") "/lib")))
#t))
(add-after 'unpack 'fix-build
(lambda _
;; Fixes for Boost versions >= 1.66.
(substitute* '("src/net/common/clientthread.cpp"
"src/net/serveraccepthelper.h")
(("boost::asio::socket_base::non_blocking_io command\\(true\\);")
"")
(("newSock->io_control\\(command\\);")
"newSock->non_blocking(true);")
(("acceptedSocket->io_control\\(command\\);")
"acceptedSocket->non_blocking(true);"))
#t))
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(invoke "qmake" "pokerth.pro" "CONFIG+=client"
(string-append "PREFIX=" (assoc-ref outputs "out"))))))))
(list
#:tests? #f ; No test suite
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "." "\\.pro$")
(("LIB_DIRS =")
(string-append "LIB_DIRS = "
#$(this-package-input "boost") "/lib")))))
(add-after 'unpack 'fix-build
(lambda _
;; Fixes for Boost versions >= 1.66.
(substitute* '("src/net/common/clientthread.cpp"
"src/net/serveraccepthelper.h")
(("boost::asio::socket_base::non_blocking_io command\\(true\\);")
"")
(("newSock->io_control\\(command\\);")
"newSock->non_blocking(true);")
(("acceptedSocket->io_control\\(command\\);")
"acceptedSocket->non_blocking(true);"))))
(replace 'configure
(lambda _
(invoke "qmake" "pokerth.pro" "CONFIG+=client"
(string-append "PREFIX=" #$output)))))))
(home-page "https://www.pokerth.net")
(synopsis "Texas holdem poker game")
(description

View File

@ -3,6 +3,7 @@
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -20,13 +21,19 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages gawk)
#:use-module (guix licenses)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages gcc)
#:use-module (gnu packages libsigsegv)
#:use-module (gnu packages multiprecision)
#:use-module (guix packages)
#:use-module (guix gexp)
#: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))
(define-public gawk
@ -84,7 +91,43 @@
language for the easy manipulation of formatted text, such as tables of data.
Gawk features many extensions beyond the traditional implementation,
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
(package
@ -111,4 +154,85 @@ including network access, sorting, and large libraries.")
"@command{mawk} is an interpreter for the Awk programming language.
This version aims to be smaller and faster than GNU Awk, at the expense
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 scons)
#:use-module (guix build-system r)
#:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix svn-download)
@ -121,6 +122,35 @@
#:use-module (gnu packages xml)
#: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
(package
(name "memphis")
@ -186,7 +216,7 @@ OpenStreetMap written in C using eXpat, Cairo and GLib.")
(define-public geos
(package
(name "geos")
(version "3.8.1")
(version "3.10.2")
(source (origin
(method url-fetch)
(uri (string-append "http://download.osgeo.org/geos/geos-"
@ -194,8 +224,8 @@ OpenStreetMap written in C using eXpat, Cairo and GLib.")
".tar.bz2"))
(sha256
(base32
"1xqpmr10xi0n9sj47fbwc89qb0yr9imh4ybk0jsxpffy111syn22"))))
(build-system gnu-build-system)
"05apyh6dvv15fax4xvxa0kr622h4y08w9p3274mlqsrqmjcwbfsh"))))
(build-system cmake-build-system)
(arguments `(#:phases
(modify-phases %standard-phases
(add-after
@ -203,11 +233,10 @@ OpenStreetMap written in C using eXpat, Cairo and GLib.")
(lambda _
(substitute* '("tests/xmltester/testrunner.sh"
"tests/geostest/testrunner.sh")
(("/bin/sh") (which "sh")))
#t)))))
(("/bin/sh") (which "sh"))))))))
(inputs
(list glib))
(home-page "https://geos.osgeo.org/")
(home-page "https://libgeos.org/")
(synopsis "Geometry Engine for Geographic Information Systems")
(description
"GEOS provides a spatial object model and fundamental geometric
@ -312,18 +341,14 @@ and driving.")
(define-public libgeotiff
(package
(name "libgeotiff")
(version "1.5.1")
(version "1.7.1")
(source
(origin
(method url-fetch)
(uri (string-append "http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-"
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
(base32 "0b31mlzcv5b1y7jdvb7p0pa3xradrg3x5g32ym911lbhq4rrgsgr"))
(base32 "1mjmgv48x51ppax5dnb6lq7z600czxll53bx6jbzqwd4m93i7aq5"))
(modules '((guix build utils)))
(snippet
'(begin
@ -809,7 +834,7 @@ street bearings/orientations, and speed/travel time.")
(define-public mapnik
(package
(name "mapnik")
(version "3.0.18")
(version "3.1.0")
(source
(origin
(method url-fetch)
@ -817,7 +842,7 @@ street bearings/orientations, and speed/travel time.")
version "/mapnik-v" version ".tar.bz2"))
(sha256
(base32
"06frcikaj2mgz3abfk5h0z4j3hbksi0zikwjngbjv4p5f3pwxf8q"))))
"0qb2irykja5qhr9apz9r230pcxap9v3j85fi98mj2xd9sa163ms3"))))
(build-system scons-build-system)
(inputs
(list boost
@ -834,10 +859,9 @@ street bearings/orientations, and speed/travel time.")
sqlite
zlib))
(native-inputs
(list pkg-config))
(list pkg-config postgresql))
(arguments
`(#:scons ,scons-python2
#:scons-flags
`(#:scons-flags
(list "CC=gcc"
(string-append "PREFIX=" %output)
(string-append "CUSTOM_LDFLAGS=-Wl,-rpath=" %output "/lib"))))
@ -939,29 +963,12 @@ development.")
"frmts/gtiff/libgeotiff"
"frmts/zlib"
"ogr/ogrsf_frmts/geojson/libjson"))))))
(build-system gnu-build-system)
(build-system cmake-build-system)
(arguments
`(#:tests? #f
#:configure-flags
(let-syntax ((with (syntax-rules ()
((_ option input)
(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"))))
(list "-DGDAL_USE_INTERNAL_LIBS=WHEN_NO_EXTERNAL"
"-DGDAL_USE_JPEG12_INTERNAL=OFF")))
(inputs
(list curl
expat
@ -976,9 +983,10 @@ development.")
libwebp
netcdf
openssl
pcre
pcre2
postgresql ; libpq
proj
qhull
sqlite
zlib))
(native-inputs
@ -2200,7 +2208,7 @@ orienteering sport.")
(license license:gpl3+)))
(define-public grass
(let* ((version "7.8.6")
(let* ((version "7.8.7")
(majorminor (string-join (list-head (string-split version #\.) 2) ""))
(grassxx (string-append "grass" majorminor)))
(package
@ -2212,7 +2220,7 @@ orienteering sport.")
(uri (string-append "https://grass.osgeo.org/" grassxx
"/source/grass-" version ".tar.gz"))
(sha256
(base32 "1glk74ly3j0x8ymn4jp73s6y8qv7p3g5nv4gvb6l9qqplyq1fpnq"))))
(base32 "0sbz0ba9p963phvd0gmvfqq1fg4ixpipzcjbf20ys86qavjppzsg"))))
(build-system gnu-build-system)
(inputs
`(("bzip2" ,bzip2)
@ -2323,7 +2331,7 @@ visualization.")
(define-public saga
(package
(name "saga")
(version "7.9.0")
(version "8.2.1")
(source
(origin
(method url-fetch)
@ -2331,8 +2339,8 @@ visualization.")
(version-major version) "/SAGA%20-%20" version
"/saga-" version ".tar.gz"))
(sha256
(base32 "1n051yxxkylly0k9rlkx2ih3j2lf9d4csg00sm7161r7nhjvggd1"))))
(build-system gnu-build-system)
(base32 "008izjs6gvj09abxf16ssl1xy0ay3ljq4jswbggp6wiiq459minv"))))
(build-system cmake-build-system)
(native-inputs
(list pkg-config swig))
(inputs
@ -2352,7 +2360,12 @@ visualization.")
vigra
wxwidgets))
(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")
(description
"SAGA (System for Automated Geoscientific Analyses) is a Geographic
@ -2473,12 +2486,14 @@ growing set of geoscientific methods.")
"PyQgsLayoutHtml"
"PyQgsLayoutLegend"
"PyQgsLayoutMapGrid"
"PyQgsMapClippingUtils"
"PyQgsMapLayer"
"PyQgsMetadataBase"
"PyQgsOGRProvider"
"PyQgsOGRProviderGpkg"
"PyQgsOapifProvider"
"PyQgsPalLabelingLayout"
"PyQgsProcessingInPlace"
"PyQgsProject"
"PyQgsProviderConnectionGpkg"
"PyQgsProviderConnectionPostgres"
@ -2515,6 +2530,7 @@ growing set of geoscientific methods.")
"qgis_layoutlabeltest"
"qgis_layoutmanualtabletest"
"qgis_layoutmapgridtest"
"qgis_layoutmapoverviewtest"
"qgis_layoutmaptest"
"qgis_layoutmultiframetest"
"qgis_layoutpicturetest"
@ -2522,6 +2538,7 @@ growing set of geoscientific methods.")
"qgis_layouttest"
"qgis_mapdevicepixelratiotest"
"qgis_maprendererjobtest"
"qgis_meshcontourstest"
"qgis_ogrproviderguitest"
"qgis_painteffecttest"
"qgis_pallabelingtest"
@ -2535,7 +2552,8 @@ growing set of geoscientific methods.")
"qgis_svgmarkertest"
"qgis_taskmanagertest"
"qgis_wcsprovidertest"
"qgis_ziplayertest")
"qgis_ziplayertest"
"TestQgsRandomMarkerSymbolLayer")
"|")))))
(add-after 'install 'wrap-python
(assoc-ref python:%standard-phases 'wrap))

View File

@ -68,6 +68,7 @@
#:use-module (guix build-system waf)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (ice-9 match)
#:use-module ((srfi srfi-1) #:hide (zip)))
@ -75,15 +76,22 @@
(define-public glu
(package
(name "glu")
(version "9.0.1")
(version "9.0.2")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.freedesktop.org/pub/mesa/glu/glu-"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/mesa/glu")
(commit (string-append "glu-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1xqhk9bn10nbvffw3r4p4rjslwz1l7gaycc0x2pqkr2irp7q9x7n"))))
"1khxfidyglpx4yd8f3xvrj05ah823cz1ygcszhcaa4w7h9kd1lbr"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config
autoconf
automake
libtool))
(propagated-inputs
(list mesa)) ; according to glu.pc
(home-page "http://www.opengl.org/archives/resources/faq/technical/glu.htm")
@ -104,16 +112,15 @@ as ASCII text.")
(define-public freeglut
(package
(name "freeglut")
(version "3.2.1")
(version "3.2.2")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/freeglut/freeglut/"
version "/freeglut-" version ".tar.gz"))
(patches (search-patches "freeglut-gcc-compat.patch"))
"https://github.com/FreeGLUTProject/freeglut/releases"
"/download/v" version "/freeglut-" version ".tar.gz"))
(sha256
(base32
"0s6sk49q8ijgbsrrryb7dzqx2fa744jhx1wck5cz5jia2010w06l"))))
"0l3s57zw51fy3mn5qfdm4z775kfhflgxppanaxmskfzh5l44m565"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ;no test target
@ -249,14 +256,14 @@ also known as DXTn or DXTC) for Mesa.")
(package
(inherit libva)
(name "libva-without-mesa")
(inputs `(,@(fold alist-delete (package-inputs libva)
'("mesa" "wayland"))))
(inputs (fold alist-delete (package-inputs libva)
'("mesa" "wayland")))
(arguments
(strip-keyword-arguments
'(#:make-flags)
(substitute-keyword-arguments (package-arguments libva)
((#:configure-flags flags)
'(list "--disable-glx" "--disable-egl"))))))))
'(list "--disable-glx"))))))))
(define-public mesa
(package
@ -701,37 +708,31 @@ OpenGL graphics API.")
(define-public libepoxy
(package
(name "libepoxy")
(version "1.5.5")
(version "1.5.10")
(home-page "https://github.com/anholt/libepoxy")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/anholt/libepoxy/releases/download/"
version "/libepoxy-" version ".tar.xz"))
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0mh5bdgqfd8m4wj6jlvn4ac94sgfa8r6ish75ciwrhdw47dn65i6"))))
"0jw02bzdwynyrwsn5rhcacv92h9xx928j3xp436f8gdnwlyb5641"))))
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'bootstrap)
(add-before
'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((python (assoc-ref inputs "python"))
(mesa (assoc-ref inputs "mesa")))
(substitute* "src/gen_dispatch.py"
(("/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))))))
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((mesa (dirname (search-input-file inputs "lib/libGL.so"))))
(substitute* (find-files "." "\\.[ch]$")
(("libGL.so.1") (string-append mesa "/libGL.so.1"))
(("libEGL.so.1") (string-append mesa "/libEGL.so.1")))))))))
(build-system meson-build-system)
(native-inputs
(list pkg-config python))
(propagated-inputs
;; epoxy.pc: 'Requires.private: gl egl'
(list mesa))
(home-page "https://github.com/anholt/libepoxy/")
(synopsis "Library for handling OpenGL function pointer management")
(description
"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 _
(wrap-program (string-append #$output "/bin/itstool")
`("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")
(description
"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
gnome-shell
gtk+
inkscape
inkscape/stable
optipng
pkg-config
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, 2021 Mark H Weaver <mhw@netris.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 Jochem Raat <jchmrt@riseup.net>
;;; Copyright © 2016, 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
@ -1584,15 +1584,15 @@ sharing to the masses.")
(define-public sushi
(package
(name "sushi")
(version "3.38.1")
(version "42.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
(version-major version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"1sc8i0vrw6bn43rklnwp2fl1gq0r0xfd3bszcqxd0a2mh46d3rpk"))))
"0848gidl0ab8i5pa70mv8jzchmd9kqa8sn1lg977hyasyixdpn25"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -1608,27 +1608,28 @@ sharing to the masses.")
`("GI_TYPELIB_PATH" suffix
(,(getenv "GI_TYPELIB_PATH"))))))))))
(native-inputs
`(("glib:bin" ,glib "bin")
("gettext" ,gettext-minimal)
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)))
(list `(,glib "bin")
gettext-minimal
gobject-introspection
pkg-config))
(inputs
`(("clutter" ,clutter)
("clutter-gst" ,clutter-gst)
("clutter-gtk" ,clutter-gtk)
("evince" ,evince) ; For file previewing.
("freetype" ,freetype)
("gdk-pixbuf" ,gdk-pixbuf)
("gjs" ,gjs)
("gst-plugins-base" ,gst-plugins-base)
("gstreamer" ,gstreamer)
("gtksourceview" ,gtksourceview)
("harfbuzz" ,harfbuzz)
("libepoxy" ,libepoxy)
("libmusicbrainz" ,libmusicbrainz)
("libxml2" ,libxml2)
("neon" ,neon)
("webkitgtk" ,webkitgtk-with-libsoup2)))
(list bash-minimal
clutter
clutter-gst
clutter-gtk
evince ; For file previewing.
freetype
gdk-pixbuf
gjs
gst-plugins-base
gstreamer
gtksourceview
harfbuzz
libepoxy
libmusicbrainz
libxml2
neon
webkitgtk))
(synopsis "File previewer for the GNOME desktop")
(description "Sushi is a DBus-activated service that allows applications
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
(package
(name "deja-dup")
(version "42.8")
(version "43.4")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.gnome.org/World/deja-dup/-/archive/"
version "/deja-dup-" version ".tar.bz2"))
(sha256
(base32
"0d1jnlxpk52x56aqxz1g2xb4y4sm24h08p2di8mc1k8n8b52rpi4"))))
"1mr2g009w0zm5rj8dg1k77c7zdwylih2yszm8vh8wkw6al6bzfh3"))))
(build-system meson-build-system)
(arguments
`(#: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
(lambda* (#:key inputs #:allow-other-keys)
(let ((python (assoc-ref inputs "python")))
(substitute* '("libdeja/tools/duplicity/DuplicityInstance.vala"
(substitute* '("libdeja/duplicity/DuplicityInstance.vala"
"libdeja/tests/scripts/instance-error.test")
(("/bin/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")))
(substitute* "meson.build"
(("(gpgerror_libs = ).*" _ var)
(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))
(format #f "~a '-L~a/lib -lgpg-error'\n" var libgpg-error))))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
;; 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
(,(string-append (assoc-ref inputs "duplicity") "/bin")))))))))
(inputs
`(("bash-minimal" ,bash-minimal)
("duplicity" ,duplicity)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+)
("json-glib" ,json-glib)
("libgpg-error" ,libgpg-error)
("libnotify" ,libnotify)
("libsecret" ,libsecret)
("libsoup" ,libsoup-minimal-2)
("libhandy" ,libhandy)
("packagekit" ,packagekit)
("python" ,python)
("python-pygobject" ,python-pygobject)))
(list bash-minimal
duplicity
gsettings-desktop-schemas
gtk
json-glib
libadwaita
libgpg-error
libnotify
libsecret
libsoup
libhandy
packagekit
python
python-pygobject))
(native-inputs
`(("appstream-glib" ,appstream-glib)
("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
("glib" ,glib "bin") ; for glib-compile-schemas.
("gobject-introspection" ,gobject-introspection)
("itstool" ,itstool)
("pkg-config" ,pkg-config)
("vala" ,vala)))
(list appstream-glib
desktop-file-utils
gettext-minimal
`(,glib "bin") ;for glib-compile-schemas
gobject-introspection
`(,gtk "bin") ;for gtk-update-icon-cache
itstool
pkg-config
vala))
(home-page "https://wiki.gnome.org/Apps/DejaDup")
(synopsis "Simple backup tool, for regular encrypted backups")
(description
@ -4377,6 +4373,44 @@ the GObject type system and has additional code generation routines that make
targeting the GNOME stack simple.")
(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.
(define-public vala-0.52
(package/inherit vala
@ -4393,7 +4427,7 @@ targeting the GNOME stack simple.")
(define-public vte
(package
(name "vte")
(version "0.64.2")
(version "0.68.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/vte/"
@ -4401,21 +4435,20 @@ targeting the GNOME stack simple.")
"vte-" version ".tar.xz"))
(sha256
(base32
"063ys3330cvhbz1dln9irhciavb2prw098lvhpcc2rx6cl5q4g1b"))))
"0j8pvn225ybzx9p33ill838bzp8kkdn28383h0vs65m2kiwd9rqk"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
'("-Dvapi=true"
"-D_systemd=false")))
(list #:configure-flags #~(list "-Dvapi=true"
"-D_systemd=false")))
(native-inputs
`(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)
("vala" ,vala)
("gobject-introspection" ,gobject-introspection)
("glib" ,glib "bin") ; for glib-genmarshal, etc.
("gperf" ,gperf)
("python" ,python)
("xmllint" ,libxml2)))
(list pkg-config
gettext-minimal
vala
gobject-introspection
`(,glib "bin") ; for glib-genmarshal, etc.
gperf
python
libxml2))
(propagated-inputs
(list gtk+ ; required by vte-2.91.pc
gnutls ; ditto
@ -6121,25 +6154,25 @@ discovery protocols.")
(define-public totem
(package
(name "totem")
(version "3.38.1")
(version "42.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/totem/"
(version-major+minor version) "/"
(version-major version) "/"
"totem-" version ".tar.xz"))
(sha256
(base32 "02510lvzvxvmpcs64k6sqix8ysl7sihhhwvp0vmfv7521ryczylg"))))
(base32 "1az6ay7zhz2naqrzcfldx1yv2ylw1yjx76g3mqrqppwmvcflkw2a"))))
(build-system meson-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
("gobject-introspection" ,gobject-introspection)
("glib:bin" ,glib "bin") ;for 'glib-mkenums'
("itstool" ,itstool)
("xmllint" ,libxml2)
("xorg-server" ,xorg-server-for-tests)))
(list pkg-config
desktop-file-utils
gettext-minimal
gobject-introspection
`(,glib "bin") ;for 'glib-mkenums'
itstool
libxml2
xorg-server-for-tests))
(propagated-inputs
(list dconf))
(inputs
@ -6148,9 +6181,6 @@ discovery protocols.")
atk
cairo
dbus-glib
clutter
clutter-gtk
clutter-gst
xorgproto
libxxf86vm
libxtst
@ -6159,7 +6189,7 @@ discovery protocols.")
libsoup
libpeas
librsvg
lirc
libhandy
gnome-desktop
gstreamer
gst-plugins-base
@ -6173,47 +6203,41 @@ discovery protocols.")
grilo-plugins
vala))
(arguments
`(#:glib-or-gtk? #t
;; Disable automatic GStreamer plugin installation via PackageKit and
;; all that.
#:configure-flags '("-D" "enable-easy-codec-installation=no"
;; Do not build .a files for the plugins, it's
;; completely useless. This saves 2 MiB.
"--default-library" "shared")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(list
#:glib-or-gtk? #t
;; Disable automatic GStreamer plugin installation via PackageKit and
;; all that.
#:configure-flags #~(list "-Denable-easy-codec-installation=no"
;; Do not build .a files for the plugins, it's
;; completely useless. This saves 2 MiB.
"--default-library" "shared")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-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 _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))
#t))
(add-before
'install 'disable-cache-generation
(lambda _
(setenv "DESTDIR" "/")
#t))
(add-before
'check 'pre-check
(lambda _
;; Tests require a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
#t))
(add-after
'install 'wrap-totem
(lambda* (#:key inputs outputs #:allow-other-keys)
(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)))))
(setenv "DESTDIR" "/")))
(add-before 'check 'pre-check
(lambda _
;; Tests require a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")))
(add-after 'install 'wrap-totem
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(gi-typelib-path (getenv "GI_TYPELIB_PATH"))
(gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
(grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
(wrap-program (string-append out "/bin/totem")
`("GI_TYPELIB_PATH" ":" suffix (,gi-typelib-path))
`("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)))))))))
(home-page "https://wiki.gnome.org/Apps/Videos")
(synopsis "Simple media player for GNOME based on GStreamer")
(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
(package
(name "gvfs")
(version "1.48.1")
(version "1.50.2")
(source (origin
(method url-fetch)
(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"))
(sha256
(base32
"1hlxl6368h6nyqp1888szxs9hnpcw98k3h23dgqi29xd38klzsmj"))))
"0pmc0vda1ksm9l7v64h4bm8qnv16amb7nifgy0882hzg2n62pmq3"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:configure-flags
(list "-Dsystemduserunitdir=no"
"-Dtmpfilesdir=no"
;; Otherwise, the RUNPATH will lack the final path component.
(string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib/gvfs"))))
(list #:glib-or-gtk? #t
#:configure-flags
#~(list "-Dsystemduserunitdir=no"
"-Dtmpfilesdir=no"
;; Otherwise, the RUNPATH will lack the final path component.
(string-append "-Dc_link_args=-Wl,-rpath="
#$output "/lib/gvfs"))))
(native-inputs
`(("glib:bin" ,glib "bin") ;for glib-genmarshal, etc.
("gettext" ,gettext-minimal)
("gtk-doc" ,gtk-doc/stable)
("pkg-config" ,pkg-config)
("xsltproc" ,libxslt)))
(list `(,glib "bin") ;for glib-genmarshal, etc.
gettext-minimal
gtk-doc/stable
pkg-config
libxslt))
(inputs
`(("avahi" ,avahi)
("docbook-xml" ,docbook-xml-4.2)
("docbook-xsl" ,docbook-xsl)
("dbus" ,dbus)
("elogind" ,elogind)
("fuse" ,fuse-3)
("gcr" ,gcr)
("glib" ,glib)
("gnome-online-accounts" ,gnome-online-accounts)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("libarchive" ,libarchive)
("libbluray" ,libbluray)
("libcap" ,libcap)
("libcdio-paranoia" ,libcdio-paranoia)
("libgcrypt" ,libgcrypt)
("libgdata" ,libgdata)
("libgphoto2" ,libgphoto2)
("libgudev" ,libgudev)
("libimobiledevice" ,libimobiledevice)
("libmtp" ,libmtp)
("libnfs" ,libnfs)
("libsecret" ,libsecret)
("libsmbclient" ,samba)
("libsoup" ,libsoup)
("libxml2" ,libxml2)
("openssh" ,openssh)
("polkit" ,polkit)
("udisks" ,udisks)))
(list avahi
docbook-xml-4.2
docbook-xsl
dbus
elogind
fuse-3
gcr
glib
gnome-online-accounts
gsettings-desktop-schemas
libarchive
libbluray
libcap
libcdio-paranoia
libgcrypt
libgdata
libgphoto2
libgudev
libimobiledevice
libmtp
libnfs
libsecret
samba
libsoup
libxml2
openssh
polkit
udisks))
(home-page "https://wiki.gnome.org/gvfs/")
(synopsis "Userspace virtual file system for GIO")
(description
@ -8363,7 +8387,7 @@ logo='~a'~%" icon))))))
("xmllint" ,libxml2)))
(inputs
(list accountsservice
check-0.14 ;for testing
check ;for testing
elogind
eudev
gnome-session
@ -8799,7 +8823,7 @@ easy, safe, and automatic.")
(define-public tracker
(package
(name "tracker")
(version "3.1.2")
(version "3.3.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker/"
@ -8807,7 +8831,7 @@ easy, safe, and automatic.")
"tracker-" version ".tar.xz"))
(sha256
(base32
"13zcc07wd51sz7kglk3xbjrsq7d835cxfr7iwjr7nn2xcri8jdns"))))
"1lkf353xvwc0hfyi03aq2qjikx3zmva7r56nxiavy7kqjyygbmjs"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -8838,28 +8862,31 @@ easy, safe, and automatic.")
(invoke "dbus-run-session" "--" "meson" "test"
"--print-errorlogs")))))))
(native-inputs
`(("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("docbook-xsl" ,docbook-xsl)
("docbook-xml-4.5" ,docbook-xml)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("asciidoc" ,asciidoc)
("xsltproc" ,libxslt)
("cmake-minimal" ,cmake-minimal)
("python-pygobject" ,python-pygobject)
("gtk-doc" ,gtk-doc/stable)
("intltool" ,intltool)
("dbus" ,dbus)
("pkg-config" ,pkg-config)
("python" ,python)
("vala" ,vala)))
(list `(,glib "bin")
gobject-introspection
docbook-xsl
docbook-xml
gsettings-desktop-schemas
asciidoc
libxslt
cmake-minimal
python-pygobject
gtk-doc/stable
intltool
dbus
pkg-config
python
vala))
(inputs
`(("dbus" ,dbus)
("sqlite" ,sqlite)
("libxml2" ,libxml2)
("icu4c" ,icu4c) ; libunistring gets miner-miner-fs test to fail.
("json-glib" ,json-glib)
("libsoup" ,libsoup-minimal-2))) ; tracker-miners requires the same version.
(list dbus
libsoup))
(propagated-inputs
;; These are in Requires or Requires.private of tracker-sparql-3.0.pc.
(list glib
icu4c ;libunistring gets miner-miner-fs test to fail
json-glib
libxml2
sqlite))
(synopsis "Metadata database, indexer and search tool")
(home-page "https://wiki.gnome.org/Projects/Tracker")
(description
@ -8892,7 +8919,7 @@ endpoint and it understands SPARQL.")
(define-public tracker-miners
(package
(name "tracker-miners")
(version "3.1.2")
(version "3.3.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker-miners/"
@ -8900,12 +8927,12 @@ endpoint and it understands SPARQL.")
"/tracker-miners-" version ".tar.xz"))
(sha256
(base32
"0fpd69lgm8cckbamcf9c2q57glxf0s3jcfwkq8p3s4lfsvdclmd0"))))
"151w6ljq1gk9idqfq9qs3w16vms91jnxy59c9kx6jaf0fb9cdp9y"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:configure-flags
(list "-Dminer_rss=false" ; libgrss is required.
(list "-Dminer_rss=false" ; libgrss is required.
;; Ensure the RUNPATH contains all installed library locations.
(string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref %outputs "out")
@ -8937,58 +8964,62 @@ endpoint and it understands SPARQL.")
"foreach example_name: []"))
;; Disable this test that is failing randomly:
;; https://gitlab.gnome.org/GNOME/tracker-miners/-/issues/170.
(substitute* "tests/libtracker-miner/meson.build"
(substitute* "tests/libtracker-miner/meson.build"
(("'miner-fs'.*")
""))))
(replace 'check
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Some tests expect to write to $HOME.
(setenv "HOME" "/tmp")
(setenv "LANG" "en_US.UTF-8")
(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
`(("dbus" ,dbus)
("intltool" ,intltool)
("glib:bin" ,glib "bin")
("docbook-xsl" ,docbook-xsl)
("docbook-xml-4.5" ,docbook-xml)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("asciidoc" ,asciidoc)
("xsltproc" ,libxslt)
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)
("python-pygobject" ,python-pygobject)))
(list dbus
intltool
`(,glib "bin")
docbook-xsl
docbook-xml
gsettings-desktop-schemas
asciidoc
libxslt
gobject-introspection
pkg-config
python-pygobject))
(inputs
`(("exempi" ,exempi)
("ffmpeg" ,ffmpeg)
("flac" ,flac)
("giflib" ,giflib)
("glib" ,glib)
("gstreamer" ,gstreamer)
("icu4c" ,icu4c)
("json-glib" ,json-glib)
("libcue" ,libcue)
("libexif" ,libexif)
("libgsf" ,libgsf)
("libgxps" ,libgxps)
("libiptcdata" ,libiptcdata)
("libjpeg" ,libjpeg-turbo)
("libosinfo" ,libosinfo)
("libpng" ,libpng)
("libseccomp" ,libseccomp)
("libsoup" ,libsoup-minimal-2) ; because tracker requires this version.
("libtiff" ,libtiff)
("libvorbis" ,libvorbis)
("libxml2" ,libxml2)
("poppler" ,poppler)
("shared-mime-info" ,shared-mime-info)
("taglib" ,taglib)
("totem-pl-parser" ,totem-pl-parser)
("tracker" ,tracker)
("upower" ,upower)
("zlib" ,zlib)))
(list exempi
ffmpeg
flac
giflib
glib
gstreamer
icu4c
json-glib
libcue
libexif
libgsf
libgxps
libiptcdata
libjpeg-turbo
libosinfo
libpng
libseccomp
libsoup
libtiff
libvorbis
libxml2
poppler
shared-mime-info
taglib
totem-pl-parser
tracker
upower
zlib))
(synopsis "Metadata database, indexer and search tool")
(home-page "https://wiki.gnome.org/Projects/Tracker")
(description
@ -11938,7 +11969,10 @@ It uses pandoc as back-end for parsing Markdown.")
(arguments
`(#:configure-flags
(list "-Dsystemd=false"
"-Dlogind-provider=elogind")
"-Dlogind-provider=elogind"
,@(if (not (package? (this-package-native-input "valgrind")))
`("-Dtests=false") ; Some tests still run.
`()))
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap
@ -11958,7 +11992,11 @@ It uses pandoc as back-end for parsing Markdown.")
python-wrap)
#t))))))
(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
`(("glib" ,glib)
("json-glib" ,json-glib)
@ -12596,7 +12634,9 @@ Document Analysis and Recognition program.")
("xvfb" ,xorg-server-for-tests)
("gettext" ,gettext-minimal)))
(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/")
(synopsis "Building blocks for GNOME applications")
(description

View File

@ -127,10 +127,6 @@
"--enable-hardening"
"--enable-optimize"
"--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-shared-js"
"--with-system-icu"
@ -225,8 +221,7 @@
(native-inputs
(list autoconf-2.13
automake
;; TODO(staging): Use the default LLVM in the next rebuild cycle.
llvm-9 ;for llvm-objdump
llvm ;for llvm-objdump
perl
pkg-config
python-3
@ -372,8 +367,8 @@ in C/C++.")
;; XXXX: Workaround 'snippet' limitations.
(define computed-origin-method (@@ (guix packages) computed-origin-method))
(define %icecat-version "91.10.0-guix0-preview1")
(define %icecat-build-id "20220531000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-version "91.11.0-guix0-preview1")
(define %icecat-build-id "20220628000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -395,11 +390,11 @@ in C/C++.")
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(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 "4c39c619daf344f36962d958d809f6d42d3fce4e")
(gnuzilla-commit "65a61287a5142a9403ec00d973cb5e5d658a3c71")
(gnuzilla-source
(origin
(method git-fetch)
@ -411,7 +406,7 @@ in C/C++.")
(string-take gnuzilla-commit 8)))
(sha256
(base32
"1fizsq0dphm40nj6vnvjp87v34iyg78gllv3jp5ssn43ln4jiyb7"))))
"02mg7vg0bv5lxkdg86z18mf43rx7sh5i2w69lnirr8zqcrr5yd48"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; 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 #\-)))))))
;; 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
(package
(name "icedove")
(version "91.10.0")
(version "91.11.0")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
@ -1261,7 +1256,7 @@ standards of the IceCat project.")
;; in the Thunderbird release tarball. We don't use the release
;; tarball because it duplicates the Icecat sources and only adds the
;; "comm" directory, which is provided by this repository.
,(let ((changeset "4a4b901410a9055d078d0cdd7c62b2b5d56ffbad"))
,(let ((changeset "da48e7ecf800ec7761a3b6e0ca81e0c90adc30f7"))
(origin
(method hg-fetch)
(uri (hg-reference
@ -1270,7 +1265,7 @@ standards of the IceCat project.")
(file-name (string-append "thunderbird-" version "-checkout"))
(sha256
(base32
"0i2wpi08jfksqqc0j6q362nyk3zmlqd5ds2w7mm74infvrw6fzzq")))))
"0lg8z0zk05w8jah364lm7vkc95j1nkg93gf46byz0kd4nslg05nx")))))
("cargo" ,rust "cargo")
("clang" ,clang)
("llvm" ,llvm)

View File

@ -34,6 +34,7 @@
;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2021 Lu Hui <luhux76@gmail.com>
;;; Copyright © 2022 Pier-Hugues Pellerin <phpellerin@gmail.com>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -627,7 +628,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.16)
(name "go")
(version "1.17.9")
(version "1.17.11")
(source
(origin
(method git-fetch)
@ -637,7 +638,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(file-name (git-file-name name version))
(sha256
(base32
"02l6gxn738kam1niy2nl2wpsbzl4x87h2wik6hd3py19kq4z2flw"))))
"11wy6092qm7v0n10cjkyp49sbchqazi3vnij8k2sq7k7jaj63z5p"))))
(outputs '("out" "tests")) ; 'tests' contains distribution tests.
(arguments
`(#: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++
implementation.")
(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
(package
(name "gama")
(version "2.19")
(version "2.21")
(source
(origin
(method url-fetch)
@ -146,7 +146,7 @@ between two other data points.")
version ".tar.gz"))
(sha256
(base32
"0lh3abvyq07igi44mmjif3nwy6iig0j1jq6rrxkrvkhhm5q98b1q"))
"0xncq4cgzn5mgwxw515xa0rhazf28y4cnpwg67kbibya7zx2iqw7"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -616,7 +616,7 @@ transformed into common image formats for display or printing.")
(define-public python-graph-tool
(package
(name "python-graph-tool")
(version "2.43")
(version "2.45")
(source (origin
(method url-fetch)
(uri (string-append
@ -624,7 +624,7 @@ transformed into common image formats for display or printing.")
version ".tar.bz2"))
(sha256
(base32
"0v58in4rwk9fhjarjw6xfxpx5zz2z13sy3yvd14b5kr0884yw6sz"))))
"0s46qqg454kwq2px7x1a4ckryclkxnrz1r7gj6bv40nsrynafbgr"))))
(build-system gnu-build-system)
(arguments
`(#: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)
("libgudev" ,libgudev)
("libkate" ,libkate)
("libmfx" ,mediasdk)
,@(if (target-x86?)
`(("libmfx" ,mediasdk))
'())
("libmms" ,libmms)
("libmodplug" ,libmodplug)
("libmpcdec" ,libmpcdec)
@ -887,7 +889,9 @@ model to base your own plug-in on, here it is.")
("soundtouch" ,soundtouch)
("spandsp" ,spandsp)
("srt" ,srt)
("svthevcenc" ,svt-hevc)
,@(if (target-x86?)
`(("svthevcenc" ,svt-hevc))
'())
("tinyalsa" ,tinyalsa)
("transcode" ,transcode)
("usrsctp" ,usrsctp)

View File

@ -279,6 +279,19 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.")
"See 'COPYING' in the distribution."))
(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
(package
(name "libdatrie")
@ -426,6 +439,29 @@ handling for GTK+-2.x.")
(("test-layout\\$\\(EXEEXT\\)") ""))
#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
(package
(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
glib
;; Required by gdk-pixbuf-xlib-2.0.pc
;; TODO: Remove on core-updates.
libx11
;; Used for testing and required at runtime.
shared-mime-info))
@ -687,6 +724,34 @@ scaled, composited, modified, saved, or rendered.")
(home-page "https://wiki.gnome.org/Projects/GdkPixbuf")
(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.
(define-public at-spi2-core-minimal
(hidden-package
@ -1048,7 +1113,7 @@ application suites.")
(define-public gtk
(package
(name "gtk")
(version "4.6.1")
(version "4.6.6")
(source
(origin
(method url-fetch)
@ -1056,7 +1121,7 @@ application suites.")
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "0pzcs24j67f90kjcp6apgn6rffynxksjm1m7d3an7kdv3k90hmfq"))
(base32 "0w5fb4grgmb6nhf2glq2y5xqnc9y4v3lm0s9xnbw5xv96p8y9gvv"))
(patches
(search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"))))
(build-system meson-build-system)
@ -1067,10 +1132,10 @@ application suites.")
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:))
#:configure-flags
(list
"-Dbroadway-backend=true" ;for broadway display-backend
"-Dcloudproviders=enabled" ;for cloud-providers support
"-Dtracker=enabled" ;for filechooser search support
"-Dcolord=enabled" ;for color printing support
"-Dbroadway-backend=true" ;for broadway display-backend
"-Dcloudproviders=enabled" ;for cloud-providers support
"-Dtracker=enabled" ;for filechooser search support
"-Dcolord=enabled" ;for color printing support
,@(if (%current-target-system)
;; If true, gtkdoc-scangobj will try to execute a
;; cross-compiled binary.
@ -1108,9 +1173,13 @@ application suites.")
(substitute* (find-files "testsuite" "meson.build")
(("[ \t]*'empty-text.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"
(("[ \t]*'label-wrap-justify.ui',") "")) ))
(("[ \t]*'label-wrap-justify.ui',") ""))))
(add-before 'build 'set-cache
(lambda _
(setenv "XDG_CACHE_HOME" (getcwd))))
@ -1157,72 +1226,72 @@ application suites.")
(string-append out "/share/doc")
(string-append doc "/share/doc"))))))))
(native-inputs
`(("docbook-xml-4.3" ,docbook-xml-4.3)
("docbook-xsl" ,docbook-xsl)
("gettext-minimal" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection) ;for building introspection data
("graphene" ,graphene)
("gtk-doc" ,gtk-doc) ;for building documentation
("intltool" ,intltool)
("libxslt" ,libxslt) ;for building man-pages
("pkg-config" ,pkg-config)
("python-pygobject" ,python-pygobject)
;; These python modules are required for building documentation.
("python-docutils" ,python-docutils)
("python-jinja2" ,python-jinja2)
("python-markdown" ,python-markdown)
("python-markupsafe" ,python-markupsafe)
("python-pygments" ,python-pygments)
("python-toml" ,python-toml)
("python-typogrify" ,python-typogrify)
("sassc" ,sassc) ;for building themes
("tzdata" ,tzdata-for-tests)
("vala" ,vala)
("xorg-server-for-tests" ,xorg-server-for-tests)))
(list docbook-xml-4.3
docbook-xsl
gettext-minimal
`(,glib "bin")
gobject-introspection ;for building introspection data
graphene
gtk-doc ;for building documentation
intltool
libxslt ;for building man-pages
pkg-config
python-pygobject
;; These python modules are required for building documentation.
python-docutils
python-jinja2
python-markdown
python-markupsafe
python-pygments
python-toml
python-typogrify
sassc ;for building themes
tzdata-for-tests
vala
xorg-server-for-tests))
(inputs
(list colord ;for color printing support
cups ;for CUPS print-backend
ffmpeg ;for ffmpeg media-backend
(list colord ;for color printing support
cups ;for CUPS print-backend
ffmpeg ;for ffmpeg media-backend
fribidi
gstreamer ;for gstreamer media-backend
gst-plugins-bad ;provides gstreamer-player
gst-plugins-base ;provides gstreamer-gl
gstreamer ;for gstreamer media-backend
gst-plugins-bad ;provides gstreamer-player
gst-plugins-base ;provides gstreamer-gl
harfbuzz
iso-codes
json-glib
libcloudproviders ;for cloud-providers support
libcloudproviders ;for cloud-providers support
libjpeg-turbo
libpng
librsvg
libtiff
python
rest
tracker)) ;for filechooser search support
tracker)) ;for filechooser search support
(propagated-inputs
;; Following dependencies are referenced in .pc files.
`(("cairo" ,cairo)
("fontconfig" ,fontconfig)
("librsvg" ,librsvg)
("glib" ,glib)
("graphene" ,graphene)
("libepoxy" ,libepoxy)
("libx11" ,libx11) ;for x11 display-backend
("libxcomposite" ,libxcomposite)
("libxcursor" ,libxcursor)
("libxdamage" ,libxdamage)
("libxext" ,libxext)
("libxfixes" ,libxfixes)
("libxi" ,libxi)
("libxinerama" ,libxinerama) ;for xinerama support
("libxkbcommon" ,libxkbcommon)
("libxrandr" ,libxrandr)
("libxrender" ,libxrender)
("pango" ,pango)
("vulkan-headers" ,vulkan-headers)
("vulkan-loader" ,vulkan-loader) ;for vulkan graphics API support
("wayland" ,wayland) ;for wayland display-backend
("wayland-protocols" ,wayland-protocols)))
(list cairo
fontconfig
librsvg
glib
graphene
libepoxy
libx11 ;for x11 display-backend
libxcomposite
libxcursor
libxdamage
libxext
libxfixes
libxi
libxinerama ;for xinerama support
libxkbcommon
libxrandr
libxrender
pango
vulkan-headers
vulkan-loader ;for vulkan graphics API support
wayland ;for wayland display-backend
wayland-protocols))
(native-search-paths
(list
(search-path-specification

View File

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

View File

@ -84,6 +84,7 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#: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 meson)
#:use-module (guix build-system perl)
@ -318,7 +319,7 @@ operability and find drivers.")
(define-public hwinfo
(package
(name "hwinfo")
(version "21.81")
(version "21.82")
(home-page "https://github.com/openSUSE/hwinfo")
(source
(origin
@ -329,7 +330,7 @@ operability and find drivers.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0iyx1fb66s6b5ai4agw91nvl9wwk7z8g6y475vry3wv80dngzc43"))
(base32 "1ih6vrgh64408cijywy9by2snynkw91p3h0ry5pzk3lyqsl0wnlh"))
(modules
'((guix build utils)))
(snippet
@ -598,8 +599,36 @@ human-readable format and checks if it conforms to the standards.")
(sha256
(base32 "0hm86d51kj5r3yxq4c23aa57cs8igz3wrkbjn20z4frx75rpf46m"))))
(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
(list gdk-pixbuf
gobject-introspection ;for GI_TYPELIB_PATH
guile-3.0
gtk+
pciutils
python-pycurl

View File

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

View File

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

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; 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 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
@ -119,7 +119,21 @@ C/C++ part.")
"-src.tgz"))
(sha256
(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
(package

View File

@ -13,7 +13,7 @@
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
;;; 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 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
@ -194,7 +194,8 @@ licences similar to the Modified BSD licence."))))
(sha256
(base32
"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)
(arguments
`(#:configure-flags
@ -221,10 +222,7 @@ licences similar to the Modified BSD licence."))))
nlopt
openexr-2
python-lxml
;; The build fails when using the regular VTK (currently at version
;; 9), with error "addons/vtk/vtkvf.cc:23:10: fatal error:
;; vtkStructuredPointsReader.h: No such file or directory".
vtk-7))
vtk))
(native-inputs
(list pkg-config
python-wrapper))

View File

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

View File

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

View File

@ -4,7 +4,7 @@
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2020 Marius Bakke <mbakke@fastmail.com>
;;; 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 Ekaitz Zarraga <ekaitz@elenq.tech>
;;;
@ -31,6 +31,7 @@
#:use-module (guix build-system cmake)
#:use-module (gnu packages)
#:use-module (gnu packages aspell)
#:use-module (gnu packages bash)
#:use-module (gnu packages bdw-gc)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
@ -50,55 +51,59 @@
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages fontutils)
#: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
(package
(name "inkscape")
(version "1.1.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://media.inkscape.org/dl/"
"resources/file/"
"inkscape-" version ".tar.xz"))
(sha256
(base32 "1bvqg5xfs3m6r7qfdhmgzwhd1hx8wvg3nhvhmalwzcdm6ffhpjmf"))
(modules '((guix build utils)
(ice-9 format)))
(snippet
'(begin
(let-syntax
;; XXX: The build system doesn't currently support using
;; system libraries over bundled ones (see:
;; https://gitlab.com/inkscape/inkscape/issues/876).
((unbundle
(syntax-rules ()
((_ (name source-dir use-pkg-config?) ...)
(begin
;; Delete bundled source directories.
(delete-file-recursively source-dir) ...
(substitute* '("src/CMakeLists.txt"
"src/3rdparty/CMakeLists.txt")
(((string-append ".*add_subdirectory\\("
(basename source-dir) "\\).*"))
"") ...)
;; Remove bundled entries from INKSCAPE_TARGET_LIBS.
(substitute* "src/CMakeLists.txt"
(((string-append name "_LIB.*")) "") ...)
;; Register the external libraries, so that their
;; headers are added to INKSCAPE_INCS_SYS and their
;; shared libraries added to INKSCAPE_LIBS.
(if use-pkg-config?
(let* ((width (string-length "pkg_check_modules("))
(indent (string-join (make-list width " ") "")))
(substitute* "CMakeScripts/DefineDependsandFlags.cmake"
(("^pkg_check_modules\\(INKSCAPE_DEP REQUIRED.*" start)
(string-append start
(format #f "~a~a~%" indent name)))))
(substitute* "CMakeScripts/DefineDependsandFlags.cmake"
(("^find_package\\(Iconv REQUIRED\\).*" start)
(string-append (format #f "
;;; A variant of Inkscape intended to be bumped only on core-updates, to avoid
;;; rebuilding 2k+ packages through dblatex.
(define-public inkscape/stable
(hidden-package
(package
(name "inkscape")
(version "1.1.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://media.inkscape.org/dl/"
"resources/file/"
"inkscape-" version ".tar.xz"))
(sha256
(base32 "1bvqg5xfs3m6r7qfdhmgzwhd1hx8wvg3nhvhmalwzcdm6ffhpjmf"))
(modules '((guix build utils)
(ice-9 format)))
(snippet
'(begin
(let-syntax
;; XXX: The build system doesn't currently support using
;; system libraries over bundled ones (see:
;; https://gitlab.com/inkscape/inkscape/issues/876).
((unbundle
(syntax-rules ()
((_ (name source-dir use-pkg-config?) ...)
(begin
;; Delete bundled source directories.
(delete-file-recursively source-dir) ...
(substitute* '("src/CMakeLists.txt"
"src/3rdparty/CMakeLists.txt")
(((string-append ".*add_subdirectory\\("
(basename source-dir) "\\).*"))
"") ...)
;; Remove bundled entries from INKSCAPE_TARGET_LIBS.
(substitute* "src/CMakeLists.txt"
(((string-append name "_LIB.*")) "") ...)
;; Register the external libraries, so that their
;; headers are added to INKSCAPE_INCS_SYS and their
;; shared libraries added to INKSCAPE_LIBS.
(if use-pkg-config?
(let* ((width (string-length "pkg_check_modules("))
(indent (string-join (make-list width " ") "")))
(substitute* "CMakeScripts/DefineDependsandFlags.cmake"
(("^pkg_check_modules\\(INKSCAPE_DEP REQUIRED.*" start)
(string-append start
(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)
if(NOT ~:*~a_INCLUDE_DIR)
message(FATAL_ERROR \"~:*~a headers not found\")
@ -112,125 +117,170 @@ if(NOT ~:*~a_LIB)
else()
list(APPEND INKSCAPE_LIBS ~:*~a_LIB)
endif()~%~%"
name)
start)))) ...
;; Fix the references to the headers of the
;; unbundled libraries.
(substitute* (find-files "." "\\.h$|\\.cpp$")
(((string-append "#include (\"|<)3rdparty/"
(basename source-dir)) _ quote)
(string-append "#include " quote
(basename source-dir)))
...))))))
(unbundle ("2geom" "src/3rdparty/2geom" #t)
;; libcroco cannot be unbundled as it is heavily
;; modified (see:
;; https://gitlab.com/inkscape/inkscape/issues/876#note_276114904).
;; ("croco" "src/3rdparty/libcroco" #t)
;; FIXME: Unbundle the following libraries once they
;; have been packaged.
;; ("cola" "src/3rdparty/adaptagrams/libcola")
;; ("avoid" "src/3rdparty/adaptagrams/libavoid")
;; ("vpsc" "src/3rdparty/adaptagrams/libvpsc")
;; libuemf cannot be unbundled as it slightly modified
;; from upstream (see:
;; https://gitlab.com/inkscape/inkscape/issues/973).
;; ("uemf" "src/3rdparty/libuemf" #f)
;; FIXME: libdepixelize upstream is ancient and doesn't
;; build with a recent lib2geom
;; (see: https://bugs.launchpad.net/libdepixelize/+bug/1862458).
;;("depixelize" "src/3rdparty/libdepixelize")
("autotrace" "src/3rdparty/autotrace" #t)))
;; Lift the requirement on the double-conversion library, as
;; it is only needed by lib2geom, which is now unbundled.
(substitute* "CMakeScripts/DefineDependsandFlags.cmake"
((".*find_package\\(DoubleConversion.*") ""))))))
(build-system cmake-build-system)
(arguments
`(#:test-target "check" ;otherwise some test binaries are missing
#:imported-modules (,@%cmake-build-system-modules
(guix build glib-or-gtk-build-system))
#:modules ((guix build cmake-build-system)
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
(guix build utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib-or-gtk:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file))
(add-after 'unpack 'patch-icon-cache-generator
(lambda _
(substitute* "share/icons/application/CMakeLists.txt"
(("gtk-update-icon-cache") "true"))))
(add-after 'unpack 'disable-latex-export-tests
;; FIXME: For some reason the test.pdf_tex file generated by the
;; "--export-latex" lacks "some text" in its content when run in
;; the build environment. Skip the related tests.
(lambda _
(substitute* "testfiles/cli_tests/CMakeLists.txt"
(("add_cli_test\\(export-latex")
"message(TEST_DISABLED: export-latex"))))
(add-after 'unpack 'set-home
;; Mute Inkscape warnings during tests.
(lambda _
(setenv "HOME" (getcwd))))
;; Move the check phase after the install phase, as when run in the
;; tests, Inkscape relies on files that are not yet installed, such
;; as the "share/inkscape/ui/units.xml" file.
(delete 'check)
(add-after 'install 'check
(assoc-ref %standard-phases 'check))
(add-after 'install '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
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
(add-after 'install '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"))))))))))
(inputs
`(("aspell" ,aspell)
("autotrace" ,autotrace)
("gdl" ,gdl-minimal)
("gtkmm" ,gtkmm-3)
("gtk" ,gtk+)
("gtkspell3" ,gtkspell3)
("gsl" ,gsl)
("poppler" ,poppler)
("lib2geom" ,lib2geom)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libxml2" ,libxml2)
("libxslt" ,libxslt)
("libgc" ,libgc)
("libsoup" ,libsoup-minimal-2)
("libcdr" ,libcdr)
("libvisio" ,libvisio)
("libwpd" ,libwpd)
("libwpg" ,libwpg)
("freetype" ,freetype)
("popt" ,popt)
("potrace" ,potrace)
("lcms" ,lcms)
("boost" ,boost)
("python" ,python-wrapper)
("python-scour" ,python-scour)
("python-pyserial" ,python-pyserial)
("python-numpy" ,python-numpy)
("python-lxml" ,python-lxml)))
(native-inputs
(list imagemagick ;for tests
intltool
`(,glib "bin")
googletest
perl
pkg-config))
(home-page "https://inkscape.org/")
(synopsis "Vector graphics editor")
(description "Inkscape is a vector graphics editor. What sets Inkscape
name)
start)))) ...
;; Fix the references to the headers of the
;; unbundled libraries.
(substitute* (find-files "." "\\.h$|\\.cpp$")
(((string-append "#include (\"|<)3rdparty/"
(basename source-dir)) _ quote)
(string-append "#include " quote
(basename source-dir)))
...))))))
(unbundle ("2geom" "src/3rdparty/2geom" #t)
;; libcroco cannot be unbundled as it is heavily
;; modified (see:
;; https://gitlab.com/inkscape/inkscape/issues/876#note_276114904).
;; ("croco" "src/3rdparty/libcroco" #t)
;; FIXME: Unbundle the following libraries once they
;; have been packaged.
;; ("cola" "src/3rdparty/adaptagrams/libcola")
;; ("avoid" "src/3rdparty/adaptagrams/libavoid")
;; ("vpsc" "src/3rdparty/adaptagrams/libvpsc")
;; libuemf cannot be unbundled as it slightly modified
;; from upstream (see:
;; https://gitlab.com/inkscape/inkscape/issues/973).
;; ("uemf" "src/3rdparty/libuemf" #f)
;; FIXME: libdepixelize upstream is ancient and doesn't
;; build with a recent lib2geom
;; (see: https://bugs.launchpad.net/libdepixelize/+bug/1862458).
;;("depixelize" "src/3rdparty/libdepixelize")
("autotrace" "src/3rdparty/autotrace" #t)))
;; Lift the requirement on the double-conversion library, as
;; it is only needed by lib2geom, which is now unbundled.
(substitute* "CMakeScripts/DefineDependsandFlags.cmake"
((".*find_package\\(DoubleConversion.*") ""))))))
(build-system cmake-build-system)
(arguments
`(#:test-target "check" ;otherwise some test binaries are missing
#:imported-modules (,@%cmake-build-system-modules
(guix build glib-or-gtk-build-system))
#:modules ((guix build cmake-build-system)
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
(guix build utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib-or-gtk:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file))
(add-after 'unpack 'patch-icon-cache-generator
(lambda _
(substitute* "share/icons/application/CMakeLists.txt"
(("gtk-update-icon-cache") "true"))))
(add-after 'unpack 'disable-latex-export-tests
;; FIXME: For some reason the test.pdf_tex file generated by the
;; "--export-latex" lacks "some text" in its content when run in
;; the build environment. Skip the related tests.
(lambda _
(substitute* "testfiles/cli_tests/CMakeLists.txt"
(("add_cli_test\\(export-latex")
"message(TEST_DISABLED: export-latex"))))
(add-after 'unpack 'set-home
;; Mute Inkscape warnings during tests.
(lambda _
(setenv "HOME" (getcwd))))
;; Move the check phase after the install phase, as when run in the
;; tests, Inkscape relies on files that are not yet installed, such
;; as the "share/inkscape/ui/units.xml" file.
(delete 'check)
(add-after 'install 'check
(assoc-ref %standard-phases 'check))
(add-after 'install '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
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
(add-after 'install '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"))))))))))
(inputs
`(("aspell" ,aspell)
("autotrace" ,autotrace)
("gdl" ,gdl-minimal)
("gtkmm" ,gtkmm-3)
("gtk" ,gtk+)
("gtkspell3" ,gtkspell3)
("gsl" ,gsl)
("poppler" ,poppler)
("lib2geom" ,lib2geom)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libxml2" ,libxml2)
("libxslt" ,libxslt)
("libgc" ,libgc)
("libsoup" ,libsoup-minimal-2)
("libcdr" ,libcdr)
("libvisio" ,libvisio)
("libwpd" ,libwpd)
("libwpg" ,libwpg)
("freetype" ,freetype)
("popt" ,popt)
("potrace" ,potrace)
("lcms" ,lcms)
("boost" ,boost)
("python" ,python-wrapper)
("python-scour" ,python-scour)
("python-pyserial" ,python-pyserial)
("python-numpy" ,python-numpy)
("python-lxml" ,python-lxml)))
(native-inputs
(list imagemagick ;for tests
intltool
`(,glib "bin")
googletest
perl
pkg-config))
(home-page "https://inkscape.org/")
(synopsis "Vector graphics editor")
(description "Inkscape is a vector graphics editor. What sets Inkscape
apart is its use of Scalable Vector Graphics (SVG), an XML-based W3C standard,
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
(package
(name "weechat")
(version "3.5")
(version "3.6")
(source (origin
(method url-fetch)
(uri (string-append "https://weechat.org/files/src/weechat-"
version ".tar.xz"))
(sha256
(base32
"030p1264rrbr5sbyww85xq0cm5zzdmnpz89y9z90ppcfxi64x47a"))))
"1ppj676gwh67krq92xnfkmh3qnwbz8d51djsscxw013x7cdxg1cx"))))
(build-system cmake-build-system)
(outputs '("out" "doc"))
(native-inputs
`(("gettext-minimal" ,gettext-minimal)
("pkg-config" ,pkg-config)
,@(if (or (target-x86-64?)
(target-x86-32?))
,@(if (target-x86?)
`(("ruby-asciidoctor" ,ruby-asciidoctor))
'())
;; For tests.
@ -231,16 +230,14 @@ Conferencing} and @acronym{ICB, Internet Citizen's Band}.")
(arguments
`(#:configure-flags
(list "-DENABLE_PHP=OFF"
,@(if (or (target-x86-64?)
(target-x86-32?))
,@(if (target-x86?)
'("-DENABLE_MAN=ON"
"-DENABLE_DOC=ON")
'())
"-DENABLE_TESTS=ON") ; make test fails otherwise
#:phases
(modify-phases %standard-phases
,@(if (or (target-x86-64?)
(target-x86-32?))
,@(if (target-x86?)
'((add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))

View File

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

View File

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

View File

@ -13711,7 +13711,7 @@ network protocols, and core version control algorithms.")
(define-public abcl
(package
(name "abcl")
(version "1.8.0")
(version "1.9.0")
(source
(origin
(method url-fetch)
@ -13719,7 +13719,7 @@ network protocols, and core version control algorithms.")
version "/abcl-src-" version ".tar.gz"))
(sha256
(base32
"0zr5mmqyj484vza089l8vc88d07g0m8ymxzglvar3ydwyvi1x1qx"))
"0scqq5c7201xhp0g6i4y3m2nrk6l5any1nisiscbsd48ya25qax1"))
(patches
(search-patches
"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
in any Java application. Additionally, it can be used to implement (parts of)
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+
;; named-readtables is released under 3 clause BSD
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.")
(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
(package
(name "julia-dataapi")
@ -2847,6 +2890,32 @@ negative infinity in Julia.")
interfaces with @file{.ini} files.")
(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
(package
(name "julia-interpolations")
@ -3086,7 +3155,7 @@ extensions to the iterator interface.")
(define-public julia-json
(package
(name "julia-json")
(version "0.21.1")
(version "0.21.3")
(source
(origin
(method git-fetch)
@ -3095,7 +3164,7 @@ extensions to the iterator interface.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1f9k613kbknmp4fgjxvjaw4d5sfbx8a5hmcszmp1w9rqfqngjx9m"))))
(base32 "1l2p852sxq6h5fif3dqshvbw17gb06jmq2nkr88spvp7s0n0nslz"))))
(build-system julia-build-system)
(propagated-inputs
(list julia-datastructures
@ -3946,7 +4015,7 @@ performance critical code.")
(define-public julia-parsers
(package
(name "julia-parsers")
(version "1.1.0")
(version "2.2.4")
(source
(origin
(method git-fetch)
@ -3955,7 +4024,7 @@ performance critical code.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gz3drd5334xrbx2ms33hiifkd0q1in4ywc92xvrkq3xgzdjqjdk"))))
(base32 "09v2x9yd1wdp74hzsf6218dpamlf2hb5nkmixqb4bc53ll8hpw4i"))))
(build-system julia-build-system)
(home-page "https://github.com/JuliaData/Parsers.jl")
(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.")
(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
(package
(name "julia-showoff")
@ -5625,7 +5715,7 @@ useful in order to support @code{VersionNumber} comparisons applied to
(define-public julia-weakrefstrings
(package
(name "julia-weakrefstrings")
(version "1.1.0")
(version "1.4.0")
(source
(origin
(method git-fetch)
@ -5634,10 +5724,11 @@ useful in order to support @code{VersionNumber} comparisons applied to
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "14h1vdnc3rx87w6v2rr59lgb4kai2hd1wzqpxhmzsi8karg2z219"))))
(base32 "1ca94bpsjqrap2y9wlixspnisfkcms7aax0kpv7yn0v2vs9481wk"))))
(build-system julia-build-system)
(propagated-inputs
(list julia-dataapi
julia-inlinestrings
julia-parsers))
(home-page "https://github.com/JuliaData/WeakRefStrings.jl")
(synopsis "Efficient string representation and transfer in Julia")

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