From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Famulari Subject: Re: core-updates merged! Date: Tue, 2 Aug 2016 13:48:21 -0400 Message-ID: <20160802174821.GA29590@jasmine> References: <20160801081958.GA2211@solar> <87lh0ggnyt.fsf@gnu.org> <87invje1yx.fsf@we.make.ritual.n0.is> <87invj84bc.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:43564) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUdo0-0002aZ-1P for guix-devel@gnu.org; Tue, 02 Aug 2016 13:48:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUdnu-0000aQ-9F for guix-devel@gnu.org; Tue, 02 Aug 2016 13:48:39 -0400 Content-Disposition: inline In-Reply-To: <87invj84bc.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Ludovic =?iso-8859-1?Q?Court=E8s?= Cc: guix-devel@gnu.org On Tue, Aug 02, 2016 at 07:32:23PM +0200, Ludovic Courtès wrote: > As discussed on IRC, SNAFU! For reasons yet to be elucidated, the > glibc@2.23 package no longer honors /run/current-system/locale. I believe that this commit in glibc@2.23 is the culprit: http://repo.or.cz/glibc.git/commit/90fe682d3067163aa773feecf497ef599429457a The variable 'libc_cv_localedir', which we set as "/run/current-system/locale/" in the glibc/linux package definition, has been renamed to 'libc_cv_complocaledir'. Should it be enough to make the following change? This reverts ab3a6450 (system: Define 'GUIX_LOCPATH' to work around 'glibc' package defect.) and changes the name of the variable. diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index a476837..bb1879a 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -535,8 +535,7 @@ store.") ;; ;; `--localedir' is not honored, so work around it. ;; See . - ;; FIXME: This hack no longer works on 2.23! - (string-append "libc_cv_localedir=/run/current-system/locale/" + (string-append "libc_cv_complocaledir=/run/current-system/locale/" ,version) (string-append "--with-headers=" diff --git a/gnu/system.scm b/gnu/system.scm index d6bf6c4..04dd7a8 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -545,12 +545,7 @@ use 'plain-file' instead~%") ;; By default, applications that use D-Bus, such as Emacs, abort at startup ;; when /etc/machine-id is missing. Make sure these warnings are non-fatal. - ("DBUS_FATAL_WARNINGS" . "0") - - ;; XXX: Normally we wouldn't need to do this, but our glibc@2.23 package - ;; looks things up in 'PREFIX/lib/locale' instead of - ;; '/run/current-system/locale' as was intended. - ("GUIX_LOCPATH" . "/run/current-system/locale"))) + ("DBUS_FATAL_WARNINGS" . "0"))) (define %setuid-programs ;; Default set of setuid-root programs. diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 7170ab1..a6278b2 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -178,18 +178,6 @@ info --version") '(false-if-exception (getaddrinfo "does-not-exist")) marionette)) - (test-equal "locale" - "en_US.utf8" - (marionette-eval '(begin - ;; XXX: This 'setenv' call wouldn't be needed - ;; but our glibc@2.23 currently ignores - ;; /run/current-system/locale. - (setenv "GUIX_LOCPATH" - "/run/current-system/locale") - (let ((before (setlocale LC_ALL "en_US.utf8"))) - (setlocale LC_ALL before))) - marionette)) - (test-assert "screendump" (begin (marionette-control (string-append "screendump " #$output