* gnu/system/images/novena.scm (novena-barebones-os)[kernel]: Use the
linux-libre-arm-generic kernel.
[initrd-modules]: Do not specify any modules as sdhci-esdhc-imx, ahci_imx and
i2c-dev are built-in in the arm-generic kernel.
* gnu/packages/crypto.scm (crypto++): Update to 8.6.0.
Note: This release includes a fix for a bug where code using AVX2
instructions produced incorrect encrypted files:
https://github.com/weidai11/cryptopp/issues/1069
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
The removed code below affected two locations where Elixir uses Git:
* At build-time, Git is used to see if the build is inside a Git repo and if so, git info
is added to the build information that Elixir returns with `System.build_info()`. The code
uses PATH + `git` so the Git version from the inputs is used which is just fine.
* At run-time, Git is used by Mix if, and only if, there are any Git-based dependencies. This
is not the normal case, and in that sense Git is an optional dependency of Elixir - most
projects will work just fine without Git being present. Here, too, PATH + `git` is used
so if there is a need on a user's system to use Git-based dependencies, the user can just
add the package to the profile and things will just work.
I feel that leaving this alone is cleaner than trying to fix the dependency (if we want to
keep it, it needs to be in propagated-inputs in order to keep Git around; I stumbled upon
this building a project with Git dependencies after doing a `guix gc`. However, given that
using Git dependencies is the exception and I think that minimizing dependencies is nicer
I opted to just remove the substition completely).
* gnu/packages/elixir.scm (elixir)[arguments]: In 'replace-paths' phase,
remove substitutions of "git".
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/maven.scm (maven-pom): Update to 3.8.5.
(maven-model-builder)[arguments]: Build from the subdirectory to work
around a test issue.
(maven-3.0-model-builder)[arguments]: Fix accordingly.
* gnu/packages/python-crypto.scm (python-pgpy)[native-inputs]: Move
python-cryptography, python-pyasn1, python-singledispatch, python-six from
here ...
[propagated-inputs]: ... to here.
* gnu/packages/haskell-web.scm
(ghc-bsb-http-chunked)[arguments]<#:tests?>: Set to #false when
cross-compiling.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* gnu/packages/kde-frameworks.scm
(extra-cmake-modules)[arguments]<#:tests?>: Set to #false when
cross-compiling.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* gnu/packages/ocaml.scm (lablgtk)[arguments]: Remove #:tests?
instead of unconditionally setting it to #t.
[inputs]: Use new style.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* gnu/packages/perl.scm (perl-unicode-utf8)[arguments]<#:tests?>:
Set to #false when cross-compiling.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* gnu/packages/lean.scm (lean): Update to 3.41.0.
[phases]: Remove trailing #t.
[tests?] Set to #false when cross-compiling.
[inputs]: Add bash-minimal.
Co-authored-by: Maxime Devos <maximedevos@telenet.be>
* gnu/packages/embedded.scm (ucsim): Update to 0.7.1.
[source]: Update URI.
[arguments]<#:configure-flags>: Remove as all stable ports are now built by
default.
<#:phases>: Remove obsolete "remove-empty-directory" phase.
[inputs]: Add ncurses, needed for the serialview utility.
[native-inputs]: Add sdcc when needed for tests.
[description]: Update to mention newly supported microcontroller families.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/transfig-gcc10-fno-common.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/xfig.scm (transfig)[source]<origin>: Use patch
"transfig-gcc10-fno-common.patch" to avoid "multiple definition" errors with
GCC 10+ and "-f-no-common".
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Fixes <https://issues.guix.gnu.org/53425>.
* gnu/packages/xfig.scm (transfig)[arguments]<#:phases>: Remove "l" option
from "ar" invocation in makefiles to avoid incompatible meaning in binutils
2.36 causing error "ar: libdeps specified more than once".
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/terminals.scm (tio): Update to 1.35.
[build-system]: Switch to MESON-BUILD-SYSTEM.
Note: the build system changed to meson in the following commit:
e9208d693e
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
* gnu/packages/mail.scm (mblaze)[arguments]: Enable tests
and remove comment about broken tests since tests are not broken.
See <https://github.com/leahneukirchen/mblaze/issues/221>.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
* gnu/packages/embedded.scm (sdcc): Update to 4.2.0.
[description]: Update to mention the newly supported MOS 6502.
* gnu/packages/patches/sdcc-disable-non-free-code.patch: Update to match new
version.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
The justification about the order of activation snippets given in the
comment had been obsolete since
39e3b4b7ce.
Lately, running the activation snippets for "ssh-keygen -A" and "guix
archive --generate-key" would take a little bit too long, thereby
preventing the childhurd from starting on time.
* gnu/services/virtualization.scm (secret-service-operating-system):
Clear 'generate-host-keys?' and 'generate-substitute-key?'.
* gnu/services/ssh.scm (<openssh-configuration>)[generate-host-keys?]:
New field.
(openssh-activation): Honor it.
* doc/guix.texi (Networking Services): Document it.
* gnu/services/base.scm (<guix-configuration>)[generate-substitute-key?]:
New field.
(guix-activation): Honor it.
* doc/guix.texi (Base Services): Document it.
This removes the need for two intermediate representations of the file
tree.
* gnu/home/services/symlink-manager.scm (update-symlinks-script)
[simplify-file-tree, file-tree-traverse]: Remove.
[create-symlinks]: Rewrite in terms of 'file-system-fold'.
* gnu/home/services/symlink-manager.scm (update-symlinks-script)[cleanup-symlinks]:
Take a home generation and iterate over its config files directly with
'file-system-fold'. Adjuster caller accordingly. Remove 'old-tree'.
This removes three 'stat' syscalls.
* gnu/home/services/symlink-manager.scm (update-symlinks-script)[empty-directory?]:
Remove.
[cleanup-symlinks]: Replace use of 'file-exists?', 'file-is-directory?',
and 'empty-directory?' by a single 'rmdir' call.
* gnu/home/services/symlink-manager.scm (update-symlinks-script): Remove
'config-home', which is unused. Move 'home-path', 'backup-dir',
'get-target-path', 'get-backup-path', 'directory?', 'empty-directory?',
'symlink-to-store?', and 'backup-file' to the top level. Move
'create-symlinks' and 'cleanup-symlinks' to the top level as well, and
add parameters. Adjust callers.
* gnu/home/services/symlink-manager.scm (update-symlinks-script): Wrap
body in 'with-imported-modules'. Move (guix build utils) import to the
top. Move #$%initialize-gettext after definitions.
This is a followup to 0dc019e19a, which
inadvertently led the Hurd to fail to boot.
* gnu/packages/hurd.scm (hurd)[arguments]: In 'create-runsystem' phase,
expect "gnu.system=" instead of "--system=".
Fixes a regression introduced in
f15ca337be, whereby adding a dependency on
GUILE-BYTESTRUCTURES would cause a build failure of the FFI helper of
nyacc@1.00.2.
* gnu/packages/mes.scm (nyacc-1.00.2)[propagated-inputs]: New field.
* gnu/packages/python-xyz.scm (python-robotframework-sshlibrary):
[phases]{build-and-install-doc}: Install HTML documentation to the share/doc
subdirectory of the 'doc' output.
* gnu/packages/patches/python-robotframework-ug2html.patch: New patch.
* gnu/local.mk: Register it.
* gnu/packages/python-xyz.scm (python-robotframework): Apply patch.
[modules]: New argument.
[phases]{build-and-install-doc}: Modify to build the full HTML documentation,
including the user guide.
[native-inputs]: Add python-pygments.
This avoids a dependency cycle between python-selenium (4.1.0) and
python-pytest-trio.
* gnu/packages/python-xyz.scm (python-jedi)[native-inputs]: Remove
python-django-2.2.
* gnu/packages/patches/python-robotframework-sshlibrary-rf5-compat.patch: New
file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/python-xyz.scm (python-robotframework-sshlibrary): Apply it.
* gnu/packages/python-xyz.scm (python-robotframework): Update to 4.1.3.
[phases]{check}: Honor TESTS?. Search tzdata in both native-inputs or inputs,
for cross-compilation.
The current implementation of nix-system->chez-machine et al. is rather
brittle and fails in unexpected ways. In the meantime while a better
replacement is being built, prevent falsy return values from causing errors,
such as a failing “guix pull”. See <https://issues.guix.gnu.org/54292>.
* gnu/packages/chez.scm (stex-bootstrap)[maybe-compile]: Use and=> to only
call chez-machine->threaded if nix-system->chez-machine returns a truthy
value.
* gnu/packages/gnome.scm (gitg): Update to 41.
[arguments]: Drop ‘harden’ phase.
[inputs]: Replace gtkspell3 with gspell and gtksourceview-3 with gtksourceview.
[native-inputs]: Add python.
* gnu/packages/telephony.scm (find-python-interpreter-cmake-modules):
New variable.
(mumble): Update to 1.4.230.
[source]: Adjust uri and snippet accordingly.
[arguments]: Change to a list of G-expressions.
<#:configure-flags>: New argument.
<#:phases>: Drop ‘configure’ (moved to configure-flags).
Add ‘unpack-submodules’, ‘fix-settings-crash’ and ‘hardcode-pulseaudio’.
[inputs]: Add glib and poco.
Includes fixes for CVE-2022-26381, CVE-2022-26383, CVE-2022-26384,
CVE-2022-26386, and CVE-2022-26387.
* gnu/packages/gnuzilla.scm (%icecat-version, %icecat-build-id): Update.
(icecat-source): Update gnuzilla commit, base version, and hashes.
Previously, the 'scotch' and 'pt-scotch' packages would use the default
int size, which turned out to be 32 on x86_64-linux instead of 64 as it
used to be in Scotch 6.x.
* gnu/packages/maths.scm (scotch)[arguments]: Add "-DINTSIZE" to #:configure-flags.
(scotch32)[arguments]: Likewise.
(pt-scotch)[arguments]: Likewise.
(pt-scotch32)[arguments]: Likewise.
* gnu/packages/xorg.scm (libxrender)[arguments]: When cross compiling to
riscv64-linux replace config.sub and config.guess with newer versions.
[native-inputs]: When cross compiling to riscv64-linux add config.
Includes fixes for CVE-2022-26485 and CVE-2022-26486.
* gnu/packages/gnuzilla.scm (%icecat-version, %icecat-build-id): Update.
(icecat-source): Update gnuzilla commit, base version, and hashes.
Cross-compilation broke with the update to 0.15.1 in
eabc6af9b8. 'guile-snarf' would invoke
cpp instead of TRIPLET-cpp, which would thus fail to find libssh
headers.
* gnu/packages/ssh.scm (guile-ssh)[arguments]: Add
'support-cross-compilation' phase.
The Racket variant of Chez Scheme can be used to support platforms that
are not yet supported by upstream Chez Scheme.
* gnu/packages/chez.scm (chez-scheme-for-racket): New variable.
(chez-scheme-for-racket-bootstrap-bootfiles)[version]
[supported-systems]: Derive from 'chez-scheme-for-racket'.
* gnu/packages/racket.scm (%racket-version): Update comment.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Racket's variant of Chez Scheme defines 'string->uninterned-symbol',
which conflicts with the definition from '(chez mit)'. See discussion at
<https://github.com/racket/racket/issues/4151>.
* gnu/packages/chez.scm (chez-mit)[origin]<snippet>: Add workaround for
chez-scheme-for-racket.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
This makes the structure of the upstream Chez Scheme package the same as
for the Racket variant, it sets things up for (one day, hopefully)
actually being able to bootstrap the upstream Chez Scheme bootfiles, and
it may be useful for cross-compilation and adding support for
architectures without pre-built bootfiles from upstream.
* gnu/packages/chez.scm (chez-scheme-bootstrap-bootfiles): New
variable.
(chez-scheme)[native-inputs]: Add it.
[arguments]<#:phases>: Add 'unpack-bootfiles'.
(chez-scheme-for-racket-bootstrap-bootfiles): Inherit from
'chez-scheme-bootstrap-bootfiles'.
[arguments]: Adapt accordingly.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/chez.scm (nanopass): Rename to ...
(chez-nanopass-bootstrap): ... this new variable, and promote it from an
origin to a package.
(chez-nanopass): New variable.
(unpack-nanopass+stex): New variable using 'chez-nanopass-bootstrap'.
(chez-scheme-for-racket-bootstrap-bootfiles)
(chez-scheme)[native-inputs]: Add 'chez-nanopass-bootstrap'.
[arguments]<#:phases>: Adapt 'unpack-nanopass+stex' phase
to use the new variable.
* gnu/packages/racket.scm (racket-vm-cs): Likewise.
(make-unpack-nanopass+stex): Remove it.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/chez.scm (stex-bootstrap): New hidden package.
(stex): Change from origin to package inheriting from 'stex-bootstrap'
(chez-scheme)[native-inputs]: Add 'stex-bootstrap'. Remove dependencies
of stex-bootstrap.
[arguments]<#:phases>: Remove 'prepare-stex'. Adjust
'unpack-nanopass+stex' and 'install-doc'.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/chez.scm (chez-scheme)[inputs]: Remove labels.
[native-inputs]: Likewise.
[arguments]: Use G-expressions.
<#:phases>: Use 'search-input-file' instead of 'assoc-ref'.
(nanopass): Make public as a temporary workaround for Racket.
* gnu/packages/racket.scm (make-unpack-nanopass+stex): Update
accordingly.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
This change also involves building 'libkernel.a' instead of 'kernel.o'.
Support for these build options was merged upstream in 2019: see
discussion at <https://github.com/cisco/ChezScheme/pull/443>.
* gnu/packages/chez.scm (chez-scheme)[inputs]: Remove 'zlib:static' and
'lz4:static'.
[arguments]: Adjust configure phase accordingly.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
There does not seem to be any widely accepted standard path to use for
"CHEZSCHEMELIBDIRS". Using a path without a version number in it avoids
having to compute the actual path everywhere, which would be especially
unpleasant when support is added for the Racket variant of Chez Scheme,
which always has a different version number than upstream.
* gnu/packages/chez.scm (chez-scheme)[native-search-paths]: Change to
use "lib/chez-scheme" instead of "lib/csvX.Y.Z-site" for
"CHEZSCHEMELIBDIRS".
(chez-make-flags): Update accordingly.
(chez-sockets)[arguments]<#:phases>: Likewise.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/racket.scm (racket-vm-for-system): New procedure.
(racket-minimal, racket)[inputs]: Use it.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/chez.scm (chez-machine->nonthreaded)
(chez-machine->threaded, chez-machine->nix-system)
(nix-system->chez-machine, chez-upstream-features-for-system)
(%nix-arch-to-chez-alist, %nix-os-to-chez-alist): New variables.
(chez-scheme)[supported-systems]: Compute based on
'nix-system->chez-machine' and 'chez-upstream-features-for-system'.
(chez-scheme-for-racket-bootstrap-bootfiles)[supported-systems]: Compute
based on 'nix-system->chez-machine'.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
For consistency with other Racket distributions, 'racket-minimal' should
have the "racket-lib" Racket package installed: see
<https://github.com/racket/racket/issues/3851#issuecomment-942368947>.
Happily, this gives us a clean boundary between the core Racket VM and
compiler, with all of the bootstrapping involved, and building Racket
packages and installation layers, which can be handled in a nice,
uniform way and eventually turned into a 'racket-build-system'.
Building the VM layer as an "in-place" installation should help us use
it with other Racket tools.
* gnu/packages/racket.scm (racket-vm-common-configure-flags): Add
"--enable-origtree" and --prefix. Adapt "--enable-racket=" accordingly.
(racket-minimal-bc-cgc): Rename to ...
(racket-vm-cgc): ... this new variable.
[inputs]: Move 'openssl' and 'sqlite' to new 'racket-minimal'.
[arguments]<#:strip-directories>: Use "opt/racket-vm/" prefix.
<#:phases>: Adapt 'initialize-config.rktd' for removal of
'openssl' and 'sqlite'.
[description]: Tweak.
(racket-minimal-bc-3m): Rename to ...
(racket-vm-bc): ... this new variable.
[synopsis, description]: Tweak.
(racket-vm-cs): New variable, adapted from the old 'racket-minimal'.
(chez-scheme-for-racket-bootstrap-bootfiles)[arguments]<#:phhases>:
Adapt to the "opt/racket-vm/" prefix.
(racket-minimal): Rewrite like 'racket' using 'racket-vm-cs'.
(racket): Inherit from 'racket-minimal'.
[inputs]: Add 'racket-vm-cs'. Move "racket-lib" and "base" to
'racket-minimal'.
[arguments]<#:make-flags, #:configure-flags>: Override from
'racket-minimal'.
(configure-layer.rkt): Adapt to support in-place VM build with possible
intermediate layer.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/racket.scm (racket-minimal-bc-cgc): Use 'hidden-package'
rather than 'properties'.
(racket-minimal-bc-3m): Remove redundant 'hidden-package' wrapper.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Having the package inheritance chain go in the same direction as the
bootstrapping chain, rather than the opposite, is less confusing. In
some cases, it can also help to avoid unnecessary rebuilds.
* gnu/packages/racket.scm (racket-minimal-bc-cgc): Change to be the root
of the package inheritance chain.
[version, source, inputs, native-inputs, build-system, arguments]
[home-page, license]: Inline formerly inherited values.
(racket-minimal-bc-3m): Inherit from 'racket-minimal-bc-cgc' rather than
'racket-minimal'.
[inputs, native-inputs, arguments, license]: Adjust accordingly.
(racket-minimal): Inherit from 'racket-minimal-bc-3m'.
[inputs, native-inputs, arguments, license]: Adjust accordingly.
[properties]: Override effect of 'hidden-package'.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/racket.scm (racket-minimal)[arguments]<#:phases>: Change
'initialize-config.rktd' to only add a release catalog when the package
version is a release version.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/racket.scm (cfg-flag:sh-for-rktio, cfg-flag:enable-lt)
(cfg-flag:enable-racket): Change to G-expressions and combine in ...
(racket-vm-common-configure-flags): ... this new thunk.
(unpack-nanopass+stex): Change to G-expression and move to ...
(make-unpack-nanopass+stex): ... this new thunk.
(racket-bootstrap-chez-bootfiles): Rename to ...
(chez-scheme-for-racket-bootstrap-bootfiles): ... this new variable, and
stop inheriting from 'racket-minimal'.
[native-inputs]: Remove labels.
[build-system]: Use 'copy-build-system'.
[arguments]: Use G-expressions. Install under "lib".
(racket-minimal)[inputs, native-inputs]: Remove labels.
[arguments]: Use G-expressions. Avoid 'assoc-ref'. Adapt to changes in
'chez-scheme-for-racket-bootstrap-bootfiles'.
(racket-minimal-bc-3m)[native-inputs]: Remove labels.
[arguments]: Use G-expressions.
(racket-minimal-bc-cgc)[native-inputs]: Remove labels.
[arguments]: Use G-expressions.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/patches/racket-gui-tethered-launcher-backport.patch:
Adjust path.
* gnu/packages/racket.scm (racket-packages-origin)
(simple-racket-origin): New procedures.
(extend-layer): Rename to ...
(configure-layer.rkt): ... this variable. Tweak command-line arguments.
Adapt to 'config-tethered-apps-dir'.
(racket): Stop inheriting from 'racket-minimal'.
[version]: Use '%racket-version'.
[source]: Stop using bundled tarball.
[inputs]: Remove labels. Add 'racket-minimal' and package sources.
[native-inputs]: Reduce to racket-minimal.
Untested, as cross-compilation doesn't work yet.
[arguments]: Rewrite to use G-expressions, package sources from
'inputs', an explicit 'install' phase, and the revised
'configure-layer.rkt'.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>