This is a followup to 8aeccc6240.
* guix/transformations.scm (package-with-upstream-version): New procedure.
(transform-package-latest)[package-with-latest-upstream]: Remove.
Use 'package-with-upstream-version' instead.
(transform-package-version): New procedure.
(%transformations, %transformation-options)
(show-transformation-options-help/detailed): Add '-with-version'.
* tests/transformations.scm ("options->transformation, with-version"):
New test.
* doc/guix.texi (Package Transformation Options): Document '--with-version'.
(Defining Package Variants): Mention it.
* gnu/packages/package-management.scm (guix)[native-inputs]: Keep
Guile-Avahi when cross-compiling, but drop it when 'hurd-target?' is true.
[propagated-inputs]: Likewise.
Previously, "guix graph -t references --graph guix guile" would fail
with:
no path from '/gnu/store/…-guix-1.4.0-1.9fe5b49' to '/gnu/store/…-guile-3.0.8-debug'
simply because the "debug" happened to be the first one, getting bound
to NODE2. With this change it will instead pick the "out" output of
each.
* guix/scripts/graph.scm (guix-graph)[shorter?, length-sorted]: New
procedures.
In the 'path?' case, use the latter to store node lists.
Previously, "guix graph -t references --path guix guile" would fail
with:
error: '--path' option requires exactly two nodes (given 2)
This is because '_' in the 'match' clause wouldn't match the
placeholder and would instead be interested as a variable name, thereby
meaning NODES is expected to have two lists with the same tail.
* guix/scripts/graph.scm (guix-graph): Rename '_' in 'mlet' to '_g' so
that the literal '_' used in 'match' below matches.
Fixes <https://issues.guix.gnu.org/60566> where even if "--preserve='^PATH$'"
was passed to 'guix shell' it would be replaced by just the FHS directories
when '--emulate-fhs' was also set.
* gnu/scripts/environment.scm (launch-environment): Add the FHS directories to
$PATH rather than overriding $PATH completely.
* tests/guix-environment-container.sh: Test that FHS directories are in $PATH
in the container and that $PATH can be preserved.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* gnu/services/base.scm (<greetd-terminal-configuration>)[source-profile?]:
New field.
(make-greetd-terminal-configuration-file): Serialize new field to
configuration file.
* doc/guix.texi (Base Services): Document it.
Tests require a package that would cause a cyclic dependency after
removing test-target.
* gnu/packages/ocaml.scm (ocaml-ppx-expect): Disable tests.
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* gnu/packages/ocaml.scm (ocaml-ppxlib)[propagated-inputs]: Remove
unused inputs.
[native-inputs]: Move test dependencies from propagated-inputs here and add
ocaml-cinaps.
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* gnu/services/games.scm (joycond-configuration): New configuration type.
(joycond-shepherd-service): New procedure.
(joycond-service-type): New variable.
* doc/guix.texi (Game Services): Document it.
* gnu/packages/emacs-xyz.scm: (emacs-magit)[arguments]<#:phases> Fix path in
find-files for documentation.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
This restores commit dfc6957a5a, with an
additional fix to the kernel-config procedure so that it returns #f when no
configuration exists for the architecture requested, as reported by Pierre
Langlois (thanks!).
* gnu/packages/linux.scm (kernel-config): Make the return value a gexp, using
local-file, while preserving the #f return value in case of no matching config
file found. Adjust doc.
(make-linux-libre*): Adjust doc.
[native-inputs]: Remove input labels. Rewrite config input to be directly
expanded...
[phases] <configure>: ... here. Re-flow comments. Remove extraneous INPUTS
argument.
<install>: Likewise.