This makes the profile readable by older Guix instances. This is a
followup to c9fbd40785.
Fixes <https://issues.guix.gnu.org/57306>.
Reported by Arun Isaac <arunisaac@systemreboot.net>.
* guix/profiles.scm (%manifest-format-version): Export.
* guix/scripts/package.scm (build-and-use-profile): Add #:format-version
and pass it to 'profile-derivation'.
* guix/scripts/pull.scm (build-and-install): Pass #:format-version 3.
This reinstates a modified version of
b08439809f, which contained a thinko.
Previously, build-time metadata from (guix config) would be ignored when
available--e.g., when running /run/current-system/profile/bin/guix.
This is a followup to 316fc2acbb.
* guix/scripts/system/reconfigure.scm (check-forward-update): Use
'current-channels' rather than 'current-profile' + 'profile-channels'.
Add a new image test module to validate the image creation itself. The images
structures are validated using guile-parted. Checking the content of those
images is out of scope and should be performed in other modules (installation
for instance).
* gnu/tests/image.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/image.scm (validate-size, validate-partition-offset,
validate-partition-flags): New macros.
(<partition>)[size, offset, flags]: Sanitize those fields using the above
procedures respectively.
The uuid field of <partition> defaults to #false. This should be reflected
when creating the partition.
* gnu/build/image.scm (make-ext-image): Make it optional.
...and use it in packages that do not yet support 3.0.
* gnu/packages/tls.scm (openssl): Rename to ...
(openssl-1.1): ... this.
(openssl/fixed): Inherit from OPENSSL-1.1.
(openssl-3.0): Likewise.
(openssl): Turn into alias for OPENSSL-1.1.
* gnu/packages/ruby.scm (ruby-2.6)[inputs]: Change from OPENSSL to OPENSSL-1.1.
(ruby-3.0)[inputs]: Change "openssl" input to OPENSSL.
(ruby-3.1): Inherit from RUBY-3.0.
* gnu/packages/python.scm (python-2.7)[inputs]: Change from OPENSSL to
OPENSSL-1.1.
(python-3.9)[inputs]: Replace "openssl" with OPENSSL.
* gnu/packages/python-crypto.scm (python-cryptography)[inputs]: Change from
OPENSSL to OPENSSL-1.1.
* gnu/packages/databases.scm (mariadb)[inputs]: Likewise.
* gnu/packages/node.scm (node)[native-inputs, inputs]: Likewise.
(node-lts)[native-inputs]: Likewise.
Fixes https://issues.guix.gnu.org/56444
* gnu/services/version-control.scm (gitolite-activation): Modify permissions
on home directory so that git group has read access.
Reported-by: Evgeny Pisemsky <evgeny@pisemsky.com>
Experienced by David Thompson for years, wondering what was wrong. Thanks for
finding the root cause, Evgeny! :)
* gnu/packages/version-control.scm (mercurial): Update to 6.2.1.
[source](patches): Add patch for compatibility with OpenSSL 3.0.
[arguments]: Patch /usr/bin/env and /bin/sh unconditionally in all tests.
Disable four more tests.
[inputs]: Change from PYTHON to PYTHON-WRAPPER.
* gnu/packages/patches/mercurial-openssl-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* etc/snippets/tempel/scheme-mode: New file.
* etc/snippets/tempel/text-mode: New file.
* etc/snippets/scheme-mode: Moved from here...
* etc/snippets/yas/scheme-mode: ... to here.
* etc/snippets/text-mode: Moved from here...
* etc/snippets/yas/text-mode: ... to here.
* doc/contributing.texi ("The Perfect Setup"): Adjust yasnippet setup
accordingly. Add tempel setup.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/python-xyz.scm
(python-jaraco-context)[arguments]{#:tests?}: When cross-compiling, set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/python-xyz.scm
(python-jupyter-client)[arguments]{#:tests?}: When cross-compiling, set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/python-xyz.scm
(python-pip-run)[arguments]{#:tests?}: When cross-compiling, set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/python-xyz.scm
(python-jaraco-functools)[arguments]{#:tests?}: When cross-compiling, set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/python-xyz.scm
(python-path)[arguments]{#:tests?}: When cross-compiling, set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/python-xyz.scm
(python-fonttools-full)[arguments]{#:tests?}: When cross-compiling, set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/julia-xyz.scm
(julia-interpolations)[arguments]{#:tests?}: When cross-compiling,
set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/julia-xyz.scm
(julia-reversediff)[arguments]{#:tests?}: When cross-compiling,
set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/julia-xyz.scm
(julia-forwarddiff)[arguments]{#:tests?}: When cross-compiling,
set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/julia-xyz.scm
(julia-arrayinterface)[arguments]{#:tests?}: When cross-compiling,
set to #false.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
The comment states there are test failures and hence it is implied that the
intent was to disable tests, not enable them, but tests pass and the code
below enabled tests instead of disabling them.
Remove #:tests? #true to satisfy the tests-true linter.
* gnu/packages/haskell-xyz.scm
(ghc-statistics)[arguments]{#:tests?}: Remove.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
This change prevents guix system from erroring out with an ugly backtrace
when it's passed an invalid value to the “--system” or “--target”
option. It also adds the “--list-systems” and “--list-targets” options.
The manual section about guix system doesn't mention the “--target” option,
so add it there.
* guix/scripts/system (show-help): Call show-cross-build-options-help and
show-native-build-options-help.
(%options): Remove own implementation of “system” and “target” options and
use the ones in %standard-cross-build-options and
%standard-native-build-options.
* doc/guix.texi (Invoking guix system): Document “--target” option.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
In some specific cases where the device tree file is already loaded in RAM, it
can be preferable that the bootloader does not try to use a device tree from
the Linux kernel tree.
* gnu/bootloader.scm (<bootloader-configuration>)[device-tree-support?]: New field.
* gnu/bootloader/extlinux.scm (extlinux-configuration-file): Add FDTDIR line
based on <device-tree-support?> field of <bootloader-configuration>.
* doc/guix.texi (Bootloader Configuration)[device-tree-support?]: Add
documentation for the new field.