self: Use a 'guile' that doesn't complain about locales.
authorLudovic Courtès <ludo@gnu.org>
Wed, 30 Sep 2020 20:40:59 +0000 (22:40 +0200)
committerLudovic Courtès <ludo@gnu.org>
Mon, 5 Oct 2020 21:19:19 +0000 (23:19 +0200)
commit1d4ab335b22a93e01c2eb1eb3e93fc6534157040
tree195b237b582a139c8a0ce4d0e90b33d86916a7f5
parentb3417123d190349bc844a841f252351c0474e44a
self: Use a 'guile' that doesn't complain about locales.

Since commit ba48895899a117d6ace2209c3f54411a4a989133, selected UTF-8
locales are bundled.  However, because 'guix-command' is itself a Guile
script, users would still see Guile's warning, particularly on foreign
distros:

  $ LC_ALL=sdf guix foo
  guile: warning: failed to install locale
  hint: Consider installing the `glibc-utf8-locales' [...]

User commands would print that warning, but more importantly, each
invocation of 'guix substitute' would print it, even though
'guix-daemon.service' explicitly chooses "en_US.utf8", which is in
'glibc-utf8-locales'.  This leads to confusion since users would keep
seeing this message unless/until they realize they also need to install
'glibc-utf8-locales' in root's profile.

This patch gets rid of "guile: warning: ..." for a guix-pulled 'guix'
command.

* guix/self.scm (specification->package): Add "gcc-toolchain".
(quiet-guile): New procedure.
(guix-command): Use it.
* gnu/packages/aux-files/guile-launcher.c: New file.
* Makefile.am (AUX_FILES): Add it.
Makefile.am
gnu/packages/aux-files/guile-launcher.c [new file with mode: 0644]
guix/self.scm