From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: bug#30537: glibc 2.26 refuses to run on CentOS 6.8 Date: Wed, 21 Feb 2018 18:12:31 -0500 Message-ID: <87bmgiey3k.fsf__48078.8094028414$1519254862$gmane$org@netris.org> References: <87eflgstqt.fsf@mdc-berlin.de> <87d110stkn.fsf@mdc-berlin.de> <87a7w4ssmx.fsf@mdc-berlin.de> <878tbosr7h.fsf@mdc-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46951) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eodbR-00057Y-2I for bug-guix@gnu.org; Wed, 21 Feb 2018 18:16:15 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eodaM-0006Wz-Tz for bug-guix@gnu.org; Wed, 21 Feb 2018 18:15:08 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:47163) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eodaM-0006W3-J9 for bug-guix@gnu.org; Wed, 21 Feb 2018 18:14:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eodaM-0007Ja-51 for bug-guix@gnu.org; Wed, 21 Feb 2018 18:14:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <878tbosr7h.fsf@mdc-berlin.de> (Ricardo Wurmus's message of "Mon, 19 Feb 2018 20:41:07 +0100") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ricardo Wurmus Cc: guix-devel@gnu.org, 30537@debbugs.gnu.org Hi Ricardo, Ricardo Wurmus writes: > Ricardo Wurmus writes: > >> Here=E2=80=99s a patch to graft the glibc to apply the patch to allow th= e 2.6.32 >> kernel. I=E2=80=99m going to apply this at work now. > > That patch had a couple of problems. Here=E2=80=99s a new version. [...] > diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm > index b2c1d232f..111bbbcec 100644 > --- a/gnu/packages/base.scm > +++ b/gnu/packages/base.scm > @@ -12,6 +12,7 @@ > ;;; Copyright =C2=A9 2017 Mathieu Othacehe > ;;; Copyright =C2=A9 2017 Marius Bakke > ;;; Copyright =C2=A9 2017 Eric Bavier > +;;; Copyright =C2=A9 2018 Ricardo Wurmus > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -537,6 +538,7 @@ store.") > ;; Note: Always use a dot after the minor version since various place= s rely > ;; on "version-major+minor" to determine where locales are found. > (version "2.26.105-g0890d5379c") > + (replacement glibc-2.26-patched) > (source (origin > (method url-fetch) > (uri (string-append "https://alpha.gnu.org/gnu/guix/mirror/" > @@ -839,10 +841,20 @@ GLIBC/HURD for a Hurd host" > ;; Below are old libc versions, which we use mostly to build locale data= in > ;; the old format (which the new libc cannot cope with.) >=20=20 > +(define glibc-2.26-patched > + (package > + (inherit glibc) > + (replacement #f) > + (source (origin > + (inherit (package-source glibc)) > + (patches (cons (search-patch "glibc-allow-kernel-2.6.32.pa= tch") > + (origin-patches (package-source glibc))))))= )) > + > (define-public glibc-2.25 > (package > (inherit glibc) > (version "2.25") > + (replacement #f) > (source (origin > (inherit (package-source glibc)) > (uri (string-append "mirror://gnu/glibc/glibc-" > @@ -862,6 +874,7 @@ GLIBC/HURD for a Hurd host" > (package > (inherit glibc) > (version "2.24") > + (replacement #f) > (source (origin > (inherit (package-source glibc)) > (uri (string-append "mirror://gnu/glibc/glibc-" > @@ -882,6 +895,7 @@ GLIBC/HURD for a Hurd host" > (package > (inherit glibc) > (version "2.23") > + (replacement #f) > (source (origin > (inherit (package-source glibc)) > (uri (string-append "mirror://gnu/glibc/glibc-" > @@ -905,6 +919,7 @@ GLIBC/HURD for a Hurd host" > (package > (inherit glibc) > (version "2.22") > + (replacement #f) > (source (origin > (inherit (package-source glibc)) > (uri (string-append "mirror://gnu/glibc/glibc-" These (replacement #f) fields should not be needed. 'replacement' is now an 'innate' field of the package record type, which means that it is not inherited. > diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm > index 7286e954c..db43691fd 100644 > --- a/gnu/packages/commencement.scm > +++ b/gnu/packages/commencement.scm > @@ -4,6 +4,7 @@ > ;;; Copyright =C2=A9 2012 Nikita Karetnikov > ;;; Copyright =C2=A9 2014, 2015, 2017 Mark H Weaver > ;;; Copyright =C2=A9 2017, 2018 Efraim Flashner > +;;; Copyright =C2=A9 2018 Ricardo Wurmus > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -486,7 +487,7 @@ the bootstrap environment." > ;; built just below; the only difference is that this one uses the > ;; bootstrap Bash. > (package-with-bootstrap-guile > - (package (inherit glibc) > + (package/inherit glibc > (name "glibc-intermediate") > (arguments > `(#:guile ,%bootstrap-guile > @@ -664,7 +665,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a= /~a \"$@\"~%" >=20=20 > (define glibc-final > ;; The final glibc, which embeds the statically-linked Bash built abov= e. > - (package (inherit glibc-final-with-bootstrap-bash) > + (package/inherit glibc-final-with-bootstrap-bash > (name "glibc") > (inputs `(("static-bash" ,static-bash-for-glibc) > ,@(alist-delete We seem to be oscillating on the question of whether to graft these early GLIBCs. In June 2017, I switched to using 'package/inherit' here in commit 13f7f2fd2b208c29361ef2290f55911879a6adf2, and in October those changes were reverted in commit 848f550f2c105326dc3be4033c8aaf35ec21cde4 by Efraim, although I'm not sure why. It'll be painful to have *everything* grafted until the next core-updates cycle, but I suppose it's necessary. Thanks, Mark