From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id MIuuEzjNSV9FSQAA0tVLHw (envelope-from ) for ; Sat, 29 Aug 2020 03:36:24 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id OOhcDzjNSV+rKwAAbx9fmQ (envelope-from ) for ; Sat, 29 Aug 2020 03:36:24 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id CC21B9403A8 for ; Sat, 29 Aug 2020 03:36:23 +0000 (UTC) Received: from localhost ([::1]:43236 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kBrfC-0006nE-J3 for larch@yhetil.org; Fri, 28 Aug 2020 23:36:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56320) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kBret-0006Z8-9R for bug-guix@gnu.org; Fri, 28 Aug 2020 23:36:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:36255) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kBres-0005f6-W1 for bug-guix@gnu.org; Fri, 28 Aug 2020 23:36:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kBres-0003Qv-RT for bug-guix@gnu.org; Fri, 28 Aug 2020 23:36:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#43039: Vanilla GUIX 1.1.0 reconfigure fails on nss-certs Resent-From: Adam Griffiths Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sat, 29 Aug 2020 03:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43039 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Received: via spool by 43039-submit@debbugs.gnu.org id=B43039.159867213513153 (code B ref 43039); Sat, 29 Aug 2020 03:36:02 +0000 Received: (at 43039) by debbugs.gnu.org; 29 Aug 2020 03:35:35 +0000 Received: from localhost ([127.0.0.1]:47798 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kBreQ-0003Pz-Nf for submit@debbugs.gnu.org; Fri, 28 Aug 2020 23:35:35 -0400 Received: from mail-wr1-f44.google.com ([209.85.221.44]:39765) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kBrGF-0002pb-Gj for 43039@debbugs.gnu.org; Fri, 28 Aug 2020 23:10:36 -0400 Received: by mail-wr1-f44.google.com with SMTP id a5so847639wrm.6 for <43039@debbugs.gnu.org>; Fri, 28 Aug 2020 20:10:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=Fgn1m6Ice8a9qxYqus8yuV8MyZufB2emPqf/JuitaPY=; b=Hh5wyvu0G9i4ZgFuwT28UqlbIGR/YTS2Lz0OCabA/qRQttu5t1zJwFJQ+8/RybMnk+ NdZ+Z4DMIHZ3HbXqJzVyiqPXhnOyX+/JHKQ5+7dPhfLuq1O20oceJNglhEpVts4RS5IY APYjj7u/1KEFyFp6xN5edpK5oNDs9dz++wgJy9klaBU6unoGG/WUHkFbB4w++QFRLNQr 4a7aQAqHN3iRw2sShkKXTglJjn9vZCoQJIJew/3r04NeGa7Wreh6fZ9HVFeDmsTqaYRS xJ44e/zEOvIBUu8uAKmxaQJCHWPOKfM/sWHXMEaOSBgoSAeqkPgn4slqtsM1XCeI0Jp2 7BRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=Fgn1m6Ice8a9qxYqus8yuV8MyZufB2emPqf/JuitaPY=; b=ZFQN7WrhlMpUbTlp2ZdCIPkV8/CPKH4LkD+o6ftoOzVZyRyiGDAWhOx1eC5kAprvsL WTzejLItgJTHpRbt9n5LutCJrwcWLxB5OTy/oOwBu1RHQs0QGjCzHE/iIj22rMPJvu/N vcoVM8RcFvw90sFUfIaG8YnrJB6Wi3CKsXLYeaivgGvkJrJd9G7TWQMFk3EoCFH6EwL+ snOsIvBpu/YAR4DNbhDvqaLVdt4S2jNgEYD8pSthGfPkUgEDelL2GAFZ+75jtgHAYZDF dEVESO+WB51ZVQYIZDE45n8UfZmozAwqGnQCVVGBhvrrys7B1ZN2SDXxs7OGbJqzbMv5 tgvA== X-Gm-Message-State: AOAM532S7XhU7bz0md7/uOs1rZNxzjYjNTxTdEKSGFatrwhJhBiy0F7h KaJgnKSlqpmmWNQe3TnoswHwpZ4u7tVIl1fDR9A= X-Google-Smtp-Source: ABdhPJwvqhtZFoSlTPnjdYEN061fUcavZHdmL8z0r1yyZDULSleKpN0s+ymveyScc/ZC0jPp4/7MkwtdYc49PZ4l5lg= X-Received: by 2002:adf:f610:: with SMTP id t16mr1556257wrp.97.1598670629415; Fri, 28 Aug 2020 20:10:29 -0700 (PDT) MIME-Version: 1.0 References: <877dtiq30m.fsf@gnu.org> In-Reply-To: <877dtiq30m.fsf@gnu.org> From: Adam Griffiths Date: Sat, 29 Aug 2020 13:10:00 +1000 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Mailman-Approved-At: Fri, 28 Aug 2020 23:35:32 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.0 (-) X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 43039@debbugs.gnu.org Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=gmail.com header.s=20161025 header.b=Hh5wyvu0; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Spam-Score: 0.09 X-TUID: 0VO5H/jyXD+D Hey Ludo, Thanks for getting back to me, responses are inline below. FYI, I'm planning to format the host (Guix is inside VirtualBox) and may not be able to assist for a period. I literally just installed Guix into Virtual Box with the defaults, selecting Australia / Melbourne where the option presented itself. The only other change was enabling sshd, but regardless the issue presents itself. That should be enough to replicate, otherwise I'll be able to assist further when I have my system back up. Cheers, Adam > > $ sudo guix system reconfigure /etc/config.scm > > > > guile: warning: failed to install locale > > hint: Consider installing the `glibc-utf8-locales' or `glibc-locales' > > package and defining > > `GUIX_LOCPATH', along these lines: > > > > guix package -i glibc-utf8-locales > > export GUIX_LOCPATH=3D"$HOME/.guix-profile/lib/locale" > > > > See the "Application Setup" section in the manual, for more info. > > > > guix system: warning: cannot determine provenance for current system > > substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.= 0% > > That, I don=E2=80=99t understand. I tried to reproduce it by downloading > > (which is essentially the result of installing Guix System from 1.1.0). > I ran =E2=80=98guix pull=E2=80=99 (which took a lot of time=E2=80=A6) and= then =E2=80=98guix system > reconfigure=E2=80=99. =E2=80=98guix system reconfigure=E2=80=99 would on= ly emit the one-liner: > > warning: failed to install locale > > and not the hint about GUIX_LOCPATH, and then it just went ahead. > > What locale does your system use? You can type =E2=80=9Cenv | grep LC_= =E2=80=9D to see. > I'm using en_AU $ env | grep GUIX GUIX_LOCPATH=3D/run/current-system/locale GUIX_GTK3_PATH=3D/run/current-system/profile/lib/gtk-3.0 $ env | grep LC_ $ Here's my system configuration, it should be straight out of the installer. adam@Hetzer ~$ cat /etc/config.scm ;; This is an operating system configuration generated ;; by the graphical installer. (use-modules (gnu)) (use-service-modules desktop networking ssh xorg) (operating-system (locale "en_AU.utf8") (timezone "Australia/Melbourne") (keyboard-layout (keyboard-layout "au")) (host-name "Hetzer") (users (cons* (user-account (name "adam") (comment "Adam Griffiths") (group "users") (home-directory "/home/adam") (supplementary-groups '("wheel" "netdev" "audio" "video"))) %base-user-accounts)) (packages (append (list (specification->package "nss-certs")) %base-packages)) (services (append (list (service gnome-desktop-service-type) (service openssh-service-type) (set-xorg-configuration (xorg-configuration (keyboard-layout keyboard-layout)))) %desktop-services)) (bootloader (bootloader-configuration (bootloader grub-bootloader) (target "/dev/sda") (keyboard-layout keyboard-layout))) (swap-devices (list "/dev/sda2")) (file-systems (cons* (file-system (mount-point "/") (device (uuid "908e25d3-f03b-4808-8f1c-8f922e16408c" 'ext4)) (type "ext4")) %base-file-systems))) > > (The =E2=80=98guix=E2=80=99 command provided by =E2=80=98guix pull=E2=80= =99 comes with > =E2=80=98glibc-utf8-locales=E2=80=99 since commit > ba48895899a117d6ace2209c3f54411a4a989133, but the locale you=E2=80=99re u= sing > could be missing from that.) > > > downloading from > > https://ci.guix.gnu.org/nar/lzip/0llx3y194278l5ksr4xh9kc64mh8nn8d-nss-c= erts-3.52.1 > > ... > > nss-certs-3.52.1 133KiB 186KiB/s 0= 0:00 > > [######## ] 48.3% > > Backtrace: > > 3 (apply-smob/1 #) > > In ice-9/boot-9.scm: > > 705:2 2 (call-with-prompt _ _ #) > > In ice-9/eval.scm: > > 619:8 1 (_ #(#(#))) > > In guix/ui.scm: > > 1936:12 0 (run-guix-command _ . _) > > > > guix/ui.scm:1936:12: In procedure run-guix-command: > > Throw to key `encoding-error' with args `("scm_to_stringn" "cannot conv= ert > > wide string to output locale" 84 #f #f)'. > > substitution of > > /gnu/store/0llx3y194278l5ksr4xh9kc64mh8nn8d-nss-certs-3.52.1 failed > > This is really puzzling: guix-daemon is always running in a valid UTF-8 > locale, as can be seen like this: > > --8<---------------cut here---------------start------------->8--- > $ sudo herd status guix-daemon > Status of guix-daemon: > It is started. > Running value is 29814. > It is enabled. > Provides (guix-daemon). > Requires (user-processes). > Conflicts with (). > Will be respawned. > $ sudo cat /proc/29814/environ |tr '\0' '\n' > GUIX_LOCPATH=3D/gnu/store/z7a6sbvqzb5zapwpznmjkq2rsxil6i67-glibc-utf8-loc= ales-2.31/lib/locale > LC_ALL=3Den_US.utf8 > --8<---------------cut here---------------end--------------->8--- $ sudo herd status guix-daemon Password: Status of guix-daemon: It is started. Running value is 229. It is enabled. Provides (guix-daemon). Requires (user-processes). Conflicts with (). Will be respawned. $ sudo cat /proc/229/environ | tr '\0' '\n' GUIX_LOCPATH=3D/gnu/store/n79cf8bvy3k96gjk1rf18d36w40lkwlr-glibc-utf8-local= es-2.29/lib/locale LC_ALL=3Den_US.utf8 Shouldn't this be en_AU.utf8? Or at least en_GB.utf8? There is an en_AU locale available: $ ls /run/current-system/locale/2.29/en_AU.utf8/LC_MESSAGES/ SYS_LC_MESSAGES I notice there's also 2 en_US locales: $ /run/current-system/locale/2.29/en_US. en_US.utf8/ en_US.UTF-8/ The locales all _appear_ to be there $ ls /run/current-system/locale/2.29/en_*/ /run/current-system/locale/2.29/en_AU.utf8/: LC_ADDRESS LC_CTYPE LC_MEASUREMENT LC_MONETARY LC_NUMERIC LC_TELEPHONE LC_COLLATE LC_IDENTIFICATION LC_MESSAGES/ LC_NAME LC_PAPER LC_= TIME /run/current-system/locale/2.29/en_CA.utf8/: LC_ADDRESS LC_CTYPE LC_MEASUREMENT LC_MONETARY LC_NUMERIC LC_TELEPHONE LC_COLLATE LC_IDENTIFICATION LC_MESSAGES/ LC_NAME LC_PAPER LC_= TIME /run/current-system/locale/2.29/en_GB.utf8/: LC_ADDRESS LC_CTYPE LC_MEASUREMENT LC_MONETARY LC_NUMERIC LC_TELEPHONE LC_COLLATE LC_IDENTIFICATION LC_MESSAGES/ LC_NAME LC_PAPER LC_= TIME /run/current-system/locale/2.29/en_US.utf8/: LC_ADDRESS LC_CTYPE LC_MEASUREMENT LC_MONETARY LC_NUMERIC LC_TELEPHONE LC_COLLATE LC_IDENTIFICATION LC_MESSAGES/ LC_NAME LC_PAPER LC_= TIME /run/current-system/locale/2.29/en_US.UTF-8/: LC_ADDRESS LC_CTYPE LC_MEASUREMENT LC_MONETARY LC_NUMERIC LC_TELEPHONE LC_COLLATE LC_IDENTIFICATION LC_MESSAGES/ LC_NAME LC_PAPER LC_= TIME But the contents of the LC_MESSAGES directories differ. $ ls /run/current-system/locale/2.29/en_*/** /run/current-system/locale/2.29/en_AU.utf8/LC_ADDRESS /run/current-system/locale/2.29/en_AU.utf8/LC_COLLATE /run/current-system/locale/2.29/en_AU.utf8/LC_CTYPE /run/current-system/locale/2.29/en_AU.utf8/LC_IDENTIFICATION /run/current-system/locale/2.29/en_AU.utf8/LC_MEASUREMENT /run/current-system/locale/2.29/en_AU.utf8/LC_MONETARY /run/current-system/locale/2.29/en_AU.utf8/LC_NAME /run/current-system/locale/2.29/en_AU.utf8/LC_NUMERIC /run/current-system/locale/2.29/en_AU.utf8/LC_PAPER /run/current-system/locale/2.29/en_AU.utf8/LC_TELEPHONE /run/current-system/locale/2.29/en_AU.utf8/LC_TIME /run/current-system/locale/2.29/en_CA.utf8/LC_ADDRESS /run/current-system/locale/2.29/en_CA.utf8/LC_COLLATE /run/current-system/locale/2.29/en_CA.utf8/LC_CTYPE /run/current-system/locale/2.29/en_CA.utf8/LC_IDENTIFICATION /run/current-system/locale/2.29/en_CA.utf8/LC_MEASUREMENT /run/current-system/locale/2.29/en_CA.utf8/LC_MONETARY /run/current-system/locale/2.29/en_CA.utf8/LC_NAME /run/current-system/locale/2.29/en_CA.utf8/LC_NUMERIC /run/current-system/locale/2.29/en_CA.utf8/LC_PAPER /run/current-system/locale/2.29/en_CA.utf8/LC_TELEPHONE /run/current-system/locale/2.29/en_CA.utf8/LC_TIME /run/current-system/locale/2.29/en_GB.utf8/LC_ADDRESS /run/current-system/locale/2.29/en_GB.utf8/LC_COLLATE /run/current-system/locale/2.29/en_GB.utf8/LC_CTYPE /run/current-system/locale/2.29/en_GB.utf8/LC_IDENTIFICATION /run/current-system/locale/2.29/en_GB.utf8/LC_MEASUREMENT /run/current-system/locale/2.29/en_GB.utf8/LC_MONETARY /run/current-system/locale/2.29/en_GB.utf8/LC_NAME /run/current-system/locale/2.29/en_GB.utf8/LC_NUMERIC /run/current-system/locale/2.29/en_GB.utf8/LC_PAPER /run/current-system/locale/2.29/en_GB.utf8/LC_TELEPHONE /run/current-system/locale/2.29/en_GB.utf8/LC_TIME /run/current-system/locale/2.29/en_US.utf8/LC_ADDRESS /run/current-system/locale/2.29/en_US.UTF-8/LC_ADDRESS /run/current-system/locale/2.29/en_US.utf8/LC_COLLATE /run/current-system/locale/2.29/en_US.UTF-8/LC_COLLATE /run/current-system/locale/2.29/en_US.utf8/LC_CTYPE /run/current-system/locale/2.29/en_US.UTF-8/LC_CTYPE /run/current-system/locale/2.29/en_US.utf8/LC_IDENTIFICATION /run/current-system/locale/2.29/en_US.UTF-8/LC_IDENTIFICATION /run/current-system/locale/2.29/en_US.utf8/LC_MEASUREMENT /run/current-system/locale/2.29/en_US.UTF-8/LC_MEASUREMENT /run/current-system/locale/2.29/en_US.utf8/LC_MONETARY /run/current-system/locale/2.29/en_US.UTF-8/LC_MONETARY /run/current-system/locale/2.29/en_US.utf8/LC_NAME /run/current-system/locale/2.29/en_US.UTF-8/LC_NAME /run/current-system/locale/2.29/en_US.utf8/LC_NUMERIC /run/current-system/locale/2.29/en_US.UTF-8/LC_NUMERIC /run/current-system/locale/2.29/en_US.utf8/LC_PAPER /run/current-system/locale/2.29/en_US.UTF-8/LC_PAPER /run/current-system/locale/2.29/en_US.utf8/LC_TELEPHONE /run/current-system/locale/2.29/en_US.UTF-8/LC_TELEPHONE /run/current-system/locale/2.29/en_US.utf8/LC_TIME /run/current-system/locale/2.29/en_US.UTF-8/LC_TIME /run/current-system/locale/2.29/en_AU.utf8/LC_MESSAGES: SYS_LC_MESSAGES /run/current-system/locale/2.29/en_CA.utf8/LC_MESSAGES: SYS_LC_MESSAGES /run/current-system/locale/2.29/en_GB.utf8/LC_MESSAGES: SYS_LC_MESSAGES /run/current-system/locale/2.29/en_US.utf8/LC_MESSAGES: SYS_LC_MESSAGES /run/current-system/locale/2.29/en_US.UTF-8/LC_MESSAGES: SYS_LC_MESSAGES Is this correct? At first glance (with no knowledge of how the locales work) I would assume that en_AU and en_CA overlay onto en_GB. But even en_GB is effectively empty, which would contradict that assumption= . > > However, I just realized that =E2=80=98guix substitute=E2=80=99 switches = to the client=E2=80=99s > locale: > > --8<---------------cut here---------------start------------->8--- > ;; Attempt to install the client's locale, mostly so that messages are > ;; suitably translated. > (match (or (find-daemon-option "untrusted-locale") > (find-daemon-option "locale")) > (#f #f) > (locale (false-if-exception (setlocale LC_ALL locale)))) > --8<---------------cut here---------------end--------------->8--- > > Thus, if the client is running in a non-UTF-8 locale, we can end up with > the error you report. > > Thanks, > Ludo=E2=80=99.