GNU bug report logs - #33603
'guix substitute' creates files with incorrect names when not running in a UTF-8 locale

Previous Next

Package: guix;

Reported by: Brett Gilio <brettg <at> posteo.net>

Date: Mon, 3 Dec 2018 20:00:02 UTC

Severity: important

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #30 received at 33603 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: 33603 <at> debbugs.gnu.org
Subject: Re: bug#33603: Invalid hash for NSS-Certs
Date: Tue, 15 Jan 2019 13:57:55 +0100
Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:

> Hello!
>
> Ludovic Courtès <ludo <at> gnu.org> writes:
>
>> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> skribis:
>
> [...]
>
>>> It's a rather old install (late 2016 -- but kept up-to-date, of course
>>> :-)) so there might be remnants from the past?  How could I verify in
>>> which locale the guix-daemon is running?
>>
>> You could check /proc/$(pidof guix-daemon)/environ for variables like
>> ‘LC_ALL’.  And of course, you can see if ‘guix substitute’ emits the
>> infamous “can’t install locale” message.  :-)
>>
>> Regardless, I think ‘guix substitute’ should ideally be
>> locale-insensitive, or it should error out rather than produce files
>> with the wrong names.
>
> The only environment variable(s?) defined for the guix-daemon process on
> that machine is:
>
> $ pidof guix-daemon
> 270
>
> sudo cat /proc/270/environ
> GUIX_LOCPATH=/gnu/store/94k5w17z54w25lgp90czdqfv9m4hwzhq-glibc-utf8-locales-2.28/lib/localeLC_ALL=en_US.utf8

This is perfect (see commit 7e4bc215098f334bc2a11737f2665dd4992fc2da,
which gave you this, fixing the issue we’re talking about on GuixSD.)

So I don’t think this machine has any problem.  Perhaps nss-certs was
installed before the fix above?

> I'm not familiar with this systemfs structure, but shouldn't there be a
> newline before the LC_ALL=en_US.utf8 variable assignment?

No, there are actually newlines, try:

  cat /proc/270/environ | xargs -0 echo

HTH,
Ludo’.




This bug report was last modified 6 years and 179 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.