~ruther/guix-local

a15d72f8 — Philip McGrath 3 years ago
gnu: chez-scheme-for-racket: Support all systems.

On systems for which Racket's variant of Chez Scheme cannot generate
native code, it can use a 'pbarch' machine type: a variant of the
``portable bytecode'' backend specialized to word size and endianness.
This allows Racket CS to replace Racket BC on those systems while
maintaining comparable performance. (Racket BC lacks JIT support for
those systems anyway.) It also lets us provide a Chez Scheme package on
all systems Guix supports.

This patch adds 'pbarch' support to both 'chez-scheme-for-racket' and
'racket-vm-cs', but it does not change the Racket VM implementation used
for the 'racket' and 'racket-minimal' packages.

* gnu/packages/chez.scm (nix-system->pbarch-machine-type): New variable.
(chez-scheme-for-racket)[inputs]: Use 'libffi' for non-native systems.
[arguments]<#:configure-flags>: Always supply '-m='. Add applicable
flags for non-native systems.
[supported-systems]: Use '%supported-systems'.
[description]: Update.
(chez-scheme-for-racket-bootstrap-bootfiles)[arguments]<#:phases>: Adapt
'build' phase for non-native systems.
* gnu/packages/racket.scm (racket-vm-bc)[description]: Update.
(racket-vm-cs)[description]: Likewise.
[inputs]: Use 'libffi' for non-native systems.
[arguments]<#:configure-flags>: Add applicable flags for non-native
systems.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
cb0d1065 — Philip McGrath 3 years ago
gnu: racket: Support cross-compiling the VM packages.

Cross-compilation works for 'racket-vm-cgc', 'racket-vm-bc', and
'racket-vm-cs'. These changes are not enough to cross-compile
'racket-minimal' or 'racket': that would require building and loading
cross-compilation pluggins for 'racket-vm-cs', which will be much
easier once we can build the package 'raco-cross'.

* gnu/packages/racket.scm (racket-vm-cgc): Add 'this-package' when
cross-compiling.
(racket-vm-bc)[native-inputs]: Adjust accordingly.
(racket-vm-cs)[native-inputs]: Use 'racket-vm-cs' instead of
'racket-vm-bc' when cross-compiling. Adapt to changes to
'racket-vm-cgc'.
[arguments]<#:configure-flags>: Fix '--enable-scheme' for
cross-compilation.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9ed6e51c — Philip McGrath 3 years ago
gnu: chez-scheme-for-racket: Support cross-compilation.

* gnu/packages/chez.scm (racket-cs-native-supported-system): Change to
return the applicable machine type instead of '#t'.
(chez-scheme-for-racket)[native-inputs]: When cross-compiling, add
'this-package'.
[arguments]<#:configure-flags>: When cross-compiling, supply '-m=' and
'--toolprefix='.
<#:phases>: Work around cross-compilation issues in 'build' and
'install-docs'.
(chez-scheme-for-racket-bootstrap-bootfiles): When cross-compiling,
use 'zuo' and 'chez-scheme-for-racket' instead of 'racket-vm-bc'.
[arguments]<#:phases>: Adapt 'build' phase for cross-compilation.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
47da7228 — Philip McGrath 3 years ago
gnu: chez-scheme: Make bootfiles regular inputs.

* gnu/packages/chez.scm (chez-scheme)[native-inputs]: Move
'chez-scheme-bootstrap-bootfiles' to ...
[inputs]: ... this field.
[arguments]<#:phases>: Update 'unpack-bootfiles' accordingly.
(chez-scheme-for-racket)[native-inputs]: Move
'chez-scheme-for-racket-bootstrap-bootfiles' to ...
[inputs]: ... this field.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9647296c — Philip McGrath 3 years ago
gnu: racket: Update to 8.6.

Also, update 'chez-scheme-for-racket' to 9.5.9.2.

* gnu/packages/patches/racket-chez-scheme-bin-sh.patch: Refresh patch.
* gnu/packages/patches/racket-backport-8.6-cross-install.patch,
gnu/packages/patches/racket-backport-8.6-docindex-write.patch,
gnu/packages/patches/racket-backport-8.6-hurd.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/racket.scm (%racket-origin)[patches]: Use them and the
patches for Zuo.
(%racket-version): Update to 8.6.
(zuo)[version]: Refer to '%racket-version'.
[origin]: Use '%racket-origin'.
(racket-vm-cgc)[native-inputs]: Add 'zuo'.
[arguments]<#:make-flags>: Use 'zuo' from 'native-inputs'.
(racket)[inputs]<data, db, deinprogramm, draw, drracket, errortrace,
gui, htdp, math, option-contract, parser-tools, pict, rackunit, realm,
redex, scribble, typed-racket, string-constants, swindle, syntax-color,
web-server>: Update checksums.
* gnu/packages/chez.scm (target-chez-os): Handle Hurd and QNX.
(%chez-features-table): Likewise.
(chez-scheme-for-racket): Update to 9.5.9.2.
[native-inputs]: Add 'zuo'.
[arguments]<#:out-of-source?>: Use out-of-source build.
<#:tests?>: Skip them due to ongoing problems.
<#:configure-flags>: Add '--install-csug=' and '--installreleasenotes='.
<#:make-flags>: Use 'zuo' from 'native-inputs'. Supply 'STEXLIB=' here,
rather than in a phase.
<#:phases>: Replace 'install-docs' using new 'make' target.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
07a8440f — Philip McGrath 3 years ago
gnu: Add Zuo.

* gnu/packages/patches/racket-backport-8.6-zuo.patch,
gnu/packages/patches/racket-zuo-bin-sh.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/racket.scm (%zuo-version): New variable.
(zuo): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
5142fba3 — Philip McGrath 3 years ago
gnu: chez-scheme: Fix use of "/bin/sh".

The unsuccessful attempt to execute "/bin/sh" by Chez Scheme's 'process'
function seems to have caused parts of the Chez Scheme test suite to
have been silently skipped. The issue was exposed by the upcoming
changes to Racket's build system.

* gnu/packages/patches/chez-scheme-bin-sh.patch,
gnu/packages/patches/racket-chez-scheme-bin-sh.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/racket.scm (%racket-origin)[patches]: Update accordingly.
* gnu/packages/chez.scm (chez-scheme)[origin]<patches>: Likewise.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
911768b6 — Philip McGrath 3 years ago
gnu: racket: Adjust patch for "/bin/sh" in rktio.

Use '_PATH_BSHELL' instead of a custom preprocessor macro. This may not
be The Right Thing in the long term, but it at least avoids a
proliferation of 'CPPFLAGS'.

* gnu/packages/patches/racket-minimal-sh-via-rktio.patch: Rename to ...
* gnu/packages/patches/racket-rktio-bin-sh.patch: ... this, and change
to use '_PATH_BSHELL'.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
* gnu/packages/racket.scm (%racket-origin)[patches]: Likewise.
(racket-vm-common-configure-flags): Stop setting 'CPPFLAGS'. Change to a
constant instead of a function, since we no longer need the delay.
(racket-vm-cgc, racket-vm-bc,
racket-vm-cs)[arguments]<#:configure-flags>: Update accordingly.
[inputs]: Remove 'bash-minimal'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
b8a6f6b4 — Philip McGrath 3 years ago
etc: teams: Add entry for Philip McGrath.

* etc/teams.scm.in ("Philip McGrath"): New member.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
59b0cc68 — Philip McGrath 3 years ago
etc: teams: Add racket team.

* etc/teams.scm.in (racket): New team.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
4176d47e — Philip McGrath 3 years ago
gnu: stex: Fix read-only gifs and math directories.

Excplicitly set the user write bit when initializing the gifs or math
directories from the skeletons installed in the store. See also upstream
discussion at <https://github.com/dybvig/stex/pull/6>. This problem
would be exposed by the upcoming changes to Racket's build system.

* gnu/packages/patches/stex-copy-from-immutable-store.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/chez.scm (stex-bootstrap)[patches]: Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
92e8cff7 — Philip McGrath 3 years ago
gnu: stex: Update to 1.2.2-2.afa6075.

* gnu/packages/chez.scm (stex-bootstrap): Update to 1.2.2-2.afa6075.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
f1bbb06d — Ludovic Courtès 3 years ago
guix system: Do not use 'vm-image.tmpl' in tests.

This is a followup to 95a03aa5c507d48e2cde19ea007b8f90a4e0108a.  Since
that commit, merely evaluating 'vm-image.tmpl' would trigger the build
of 'current-guix' so skip it.

* tests/guix-system.sh: Do not try to build 'vm-image.tmpl'.
9e59dbcd — Ludovic Courtès 3 years ago
guix describe: Adjust test to latest changes.

This is a followup to 64a070717c3de32332201df5d6d2d52a7f99dce9.

* tests/guix-describe.sh: Add trailing slash when checking URL.
7a2acbdc — Ludovic Courtès 3 years ago
store: Open daemon connections with SOCK_CLOEXEC.

Previously, 'guix shell' for example would leak the socket that's
connected to the daemon.

* guix/store.scm (open-unix-domain-socket, open-inet-socket): Pass
SOCK_CLOEXEC to 'socket'.
* tests/guix-shell.sh: Add test.
2028419e — Ludovic Courtès 3 years ago
store: Remove unused variable and 'socket' call.

* guix/store.scm (open-inet-socket): Remove unused 'sock' variable.
eedf71f9 — Ludovic Courtès 3 years ago
services: upower: Default to a percentage-based policy.

This is the documented default of UPower 0.99.15 (the actual default
appears to be #f though).

* gnu/services/desktop.scm (<upower-configuration>)
[use-percentage-for-policy?]: Default to #t.
* doc/guix.texi (Desktop Services): Adjust accordingly.  Explain the
tradeoff.
47652425 — Ludovic Courtès 3 years ago
services: upower: Update default percentage values.

These values are those used by default by UPower 0.99.15.

* gnu/services/desktop.scm (<upower-configuration>)[percentage-low]
[percentage-critical]: Increase.
* doc/guix.texi (Desktop Services): Update accordingly.
41bce241 — Nicolas Goaziou 3 years ago
gnu: scintilla: Update to 5.3.0.

* gnu/packages/text-editors.scm (scintilla): Update to 5.3.0.
afb7cb42 — Nicolas Goaziou 3 years ago
gnu: emacs-autothemer: Update to 0.2.12.

* gnu/packages/emacs-xyz.scm (emacs-autothemer): Update to 0.2.12.
[description]: Add missing final full stop.
Next