Commit graph

93622 commits

Author SHA1 Message Date
Philip McGrath
61ca3d9a84
gnu: Add chez-scheme-for-racket.
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>
2022-03-04 23:44:41 +01:00
Philip McGrath
b639b36de2
gnu: chez-mit: Support chez-scheme-for-racket.
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>
2022-03-04 23:44:33 +01:00
Philip McGrath
f79049caae
gnu: chez-scheme: Explicitly package bootstrap bootfiles.
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>
2022-03-04 23:44:21 +01:00
Philip McGrath
6bca38f282
gnu: Add chez-nanopass.
* 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>
2022-03-04 23:44:11 +01:00
Philip McGrath
e8518c43a3
gnu: Add stex.
* 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>
2022-03-04 23:43:53 +01:00
Philip McGrath
75f9f9441f
gnu: chez-scheme: Use new package style.
* 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>
2022-03-04 23:43:43 +01:00
Philip McGrath
37a75d23a9
gnu: chez-scheme: Use shared zlib and lz4.
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>
2022-03-04 23:43:32 +01:00
Philip McGrath
2a3946bae9
gnu: chez-scheme: Use "lib/chez-scheme" for search path.
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>
2022-03-04 23:43:25 +01:00
Philip McGrath
346d8b9a49
gnu: chez-scheme: Use new style for Chez packages.
* gnu/packages/chez.scm (chez-configure, chez-make-flags): Use
G-expressions.
(chez-srfi)[arguments]: Use G-expressions, 'chez-configure', and
'chez-make-flags'.
(chez-web, chez-sockets)[native-inputs]: Remove labels.
[arguments]: Use G-expressions.
(chez-matchable, chez-irregex, chez-fmt, chez-mit)
(chez-scmutils)[arguments]: Use G-expressions.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-03-04 23:43:19 +01:00
Philip McGrath
9b1bfc0ce9
gnu: racket: Add 'racket-vm-for-system'.
* 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>
2022-03-04 23:43:15 +01:00
Philip McGrath
f5a73d1747
gnu: chez: Add utilities for Chez machine types.
* 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>
2022-03-04 23:42:32 +01:00
Philip McGrath
df00c01d94
gnu: racket: Move Chez bootfiles to (gnu packages chez).
* gnu/packages/racket.scm (chez-scheme-for-racket-bootstrap-bootfiles):
Move to ...
* gnu/packages/chez.scm (chez-scheme-for-racket-bootstrap-bootfiles):
... this new variable.
[source]: Avoid problematic cycle with "racket.scm".
[arguments]<#:phases>: Likewise.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-03-04 23:42:26 +01:00
Philip McGrath
035562b7b7
gnu: racket-minimal: Separate from the Racket VM.
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>
2022-03-04 23:38:52 +01:00
Philip McGrath
f6cd4279a0
gnu: configure-layer.rkt: Adjust indentation.
* gnu/packages/racket.scm (configure-layer.rkt): Wrap 'command-line' in
'define-values' to reduce rightward drift.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-03-04 23:38:23 +01:00
Philip McGrath
049a27d8a8
gnu: racket-minimal: Add "debug" output.
* gnu/packages/racket.scm (racket-minimal-bc-cgc)[outputs]: Add "debug".
(racket-vm-common-configure-flags): Add "--disable-strip".

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-03-04 23:38:13 +01:00
Philip McGrath
ec031b3cf3
gnu: racket-minimal: Adjust indentation.
* 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>
2022-03-04 23:38:09 +01:00
Philip McGrath
daa91a49b2
gnu: racket-minimal: Change inheritance to follow bootstrapping.
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>
2022-03-04 23:37:59 +01:00
Philip McGrath
9f8f785014
gnu: racket-minimal: Don't configure non-existant catalogs.
* 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>
2022-03-04 23:37:55 +01:00
Philip McGrath
9e5e413c81
gnu: racket-minimal: Use new package style.
* 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>
2022-03-04 23:37:42 +01:00
Philip McGrath
81e532ff19
gnu: racket: Use Git origins for Racket packages.
* 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>
2022-03-04 23:37:24 +01:00
Philip McGrath
56cf53fb7b
gnu: racket: Update to 8.4.
* gnu/packages/patches/racket-enable-scheme-backport.patch,
gnu/packages/patches/racket-gui-tethered-launcher-backport.patch: New
patches.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/racket.scm (%racket-version, %racket-commit)
(%racket-origin): New variables.
[patches]: Add "racket-enable-scheme-backport.patch".
(racket-minimal): Update to 8.4.
[version]: Use '%racket-version'.
[source]: Use '%racket-origin'.
[inputs]: Add 'ncurses'. Remove 'zlib:static' and 'lz4:static'.
(racket-minimal-bc-3m)[inputs]: Adjust accordingly.
(racket-bootstrap-chez-bootfiles)[version]: Use Chez Scheme's
'(scheme-fork-version-number)'.
(racket)[version]: Use '%racket-version'.
[native-inputs]: Use '%racket-origin'.
[source]: Update to 8.4.
<patches>: Use "racket-gui-tethered-launcher-backport.patch".
<snippet>: Remove "srfi-doc-nonfree".

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-03-04 23:36:58 +01:00
Philip McGrath
0ff69fa1dd
gnu: Use license prefix in (gnu packages racket).
* gnu/packages/racket.scm (racket-minimal, racket-minimal-bc-3m)
(racket-bootstrap-chez-bootfiles): Use license prefix.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2022-03-04 23:36:48 +01:00
Vinicius Monego
b5f654b238
gnu: kdenlive: Gexp arguments.
* gnu/packages/kde.scm (kdenlive)[arguments]: Rewrite as gexps.
2022-03-04 19:18:20 -03:00
Vinicius Monego
4e1f20b43e
gnu: kdenlive: Add dependency on ladspa.
* gnu/packages/kde.scm (kdenlive)[inputs]: Add ladspa.
[arguments]<#:phases>: Wrap LADSPA_PATH in the 'wrap-executable phase.
2022-03-04 19:18:20 -03:00
Vinicius Monego
5b248cc23e
gnu: kdenlive: Update to 21.12.3.
* gnu/packages/kde.scm (kdenlive): Update to 21.12.3.
[source]: Use git-file-name function.
[inputs]: Add bash-minimal.
2022-03-04 19:18:12 -03:00
Guillaume Le Vaillant
d049ff1599
gnu: cl-olc: Update to 1.0-1.0269ed7.
* gnu/packages/lisp-xyz.scm (sbcl-olc): Update to 1.0-1.0269ed7.
2022-03-04 22:20:27 +01:00
Guillaume Le Vaillant
eb6425ee43
gnu: cl-maidenhead: Update to 1.0-1.202671f.
* gnu/packages/lisp-xyz.scm (sbcl-maidenhead): Update to 1.0-1.202671f.
2022-03-04 22:17:30 +01:00
Guillaume Le Vaillant
04bc3120ef
gnu: cl-mgrs: Update to 1.0-1.c06f268.
* gnu/packages/lisp-xyz.scm (sbcl-mgrs): Update to 1.0-1.c06f268.
2022-03-04 22:15:31 +01:00
Maxim Cournoyer
88d2161517
gnu: hello: Update to 2.12.
* gnu/packages/base.scm (hello): Update to 2.12.
2022-03-03 22:44:45 -05:00
Maxim Cournoyer
0b0b377db8
gnu: Add kdiskmark.
* gnu/packages/benchmark.scm (kdiskmark): New variable.
2022-03-03 22:37:52 -05:00
Tobias Geerinckx-Rice
a001522657
gnu: sudo: Update to 1.9.10.
* gnu/packages/admin.scm (sudo): Update to 1.9.10.
2022-02-27 01:00:00 +01:00
Vinicius Monego
2907c700eb
gnu: python-scikit-image: Update to 0.19.2.
* gnu/packages/python-science.scm (python-scikit-image): Update to 0.19.2.
2022-03-03 22:27:48 -03:00
Vinicius Monego
e4bd270dbe
gnu: mlt: Update to 7.4.0.
* gnu/packages/video.scm (mlt): Update to 7.4.0.
2022-03-03 22:27:48 -03:00
Vinicius Monego
00a05e481d
gnu: mlt: Wrap FREI0R_PATH and LADSPA_PATH.
* gnu/packages/video.scm (mlt)[arguments]: Use gexps. Add 'wrap-executable
phase.
[inputs]: Add bash-minimal.
2022-03-03 22:27:47 -03:00
Nicolas Goaziou
1af78ab5e8
gnu: emacs-xref: Update to 1.4.1.
* gnu/packages/emacs-xyz.scm (emacs-xref): Update to 1.4.1.
2022-03-04 00:37:45 +01:00
Pierre Langlois
74130e73c0
gnu: dovecot: Fix backtrace test on aarch64.
* gnu/packages/mail.scm (dovecot)[arguments]: Add LDFLAGS=-rdynamic to
make-flags.
2022-03-03 23:03:04 +00:00
Ludovic Courtès
d93bb18386
gnu: texlive-latex-listings, texlive-latex-pgf: Do not deprecate the variable.
This is a followup to 1071381646 and
e5dbda5abc, which had the downside that
remaining references to these two variables would trigger deprecation
warning during the "Computing Guix derivation" phase of 'guix pull'.

* gnu/packages/tex.scm (texlive-latex-listings, texlive-latex-pgf): Use
plain 'define-public' instead of 'define-deprecated-package'.
2022-03-03 23:57:01 +01:00
Niklas Eklund
d6a0713331
gnu: Add emacs-spell-fu.
* gnu/packages/emacs-xyz.scm (emacs-spell-fu): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-03-03 23:57:01 +01:00
jgart
17c3bc1955
gnu: Add jj.
* gnu/packages/messaging.scm (jj): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2022-03-03 23:57:01 +01:00
Cameron Chaparro
48bd8b408e
services: openvpn: Actually save log file.
* gnu/services/vpn.scm (openvpn-shepherd-service): Pass #:log-file to
'make-forkexec-constructor'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-03-03 23:57:01 +01:00
Tanguy Le Carrour
bb41642077
gnu: Add wtype.
* gnu/packages/freedesktop.scm (wtype): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-03-03 23:57:01 +01:00
Ludovic Courtès
f1c18e1766
download: Fix typo in procedure name.
* guix/build/download.scm (make-credendials-with-ca-trust-files): Rename
to...
(make-credentials-with-ca-trust-files): ... this.
2022-03-03 23:57:01 +01:00
Ludovic Courtès
c1a871a166
download: Load X.509 certificates only once.
Previously we'd load /etc/ssl/certs/*.pem (or similar) every time
'http-fetch' is called.

* guix/build/download.scm (make-credendials-with-ca-trust-files): Wrap
in 'mlambda'.
2022-03-03 23:57:00 +01:00
Ludovic Courtès
b4acb39b6b
download: Remove obsolete bit from docstring.
This is a followup to f4cde9ac4a.

* guix/build/download.scm (open-connection-for-uri): Remove bit about
'close-connection' from the docstring.
2022-03-03 23:57:00 +01:00
Vagrant Cascadian
137a5bc71d
gnu: diffoscope: Update to 206.
* gnu/packages/diffoscope.scm (diffoscope): Update to 206.
2022-03-03 13:11:59 -08:00
Attila Lendvai
8c30375859
gnu: Add c2ffi.
* gnu/packages/cpp.scm (c2ffi): New variable.

Co-authored-by: muradm <mail@muradm.net>
Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
2022-03-03 21:31:19 +01:00
Mathieu Othacehe
3213c37341
gnu: Add barrier.
* gnu/packages/barrier.scm: New file.
* gnu/local.mk: Add it.
2022-03-03 17:38:38 +01:00
Mathieu Othacehe
c53b317ec2
gnu: Add gulrak-filesystem.
* gnu/packages/cpp.scm (gulrak-filesystem): New variable.
2022-03-03 17:38:28 +01:00
jgart
89f17efbb3
gnu: cl-caveman: Update to 2.4.0.35cd8bc.
* gnu/packages/lisp-xyz.scm (sbcl-caveman): Update to 2.4.0.35cd8bc.
  [inputs]: Add sbcl-sxql.
  [native-inputs]: Add sbcl-prove, sbcl-lack, and sbcl-trivial-types.
  [arguments]: Delete remove-v1 phase, add test-asd-file keyword, add missing
  files to asd-files and asd-systems keywords, and add more commentary on reason
  for failing test.

Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
2022-03-03 16:21:23 +01:00
Guillaume Le Vaillant
be955121c4
gnu: cl-mcclim: Update to 0.9.7-2.292343f.
* gnu/packages/lisp-xyz.scm (sbcl-mcclim): Update to 0.9.7-2.292343f.
  [inputs]: Use new style.
  [arguments]: Update 'fix-paths' phase.
2022-03-03 16:21:23 +01:00