From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: bug#31210: Perl graft breakage Date: Thu, 19 Apr 2018 03:05:15 -0400 Message-ID: <87h8o7oevo.fsf@netris.org> References: <20180415153405.5973-1-mbakke@fastmail.com> <20180418180850.GA11245@jasmine.lan> <87muy0iaxm.fsf@netris.org> <20180418205236.GA26365@jasmine.lan> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49770) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f93et-0005MV-8t for bug-guix@gnu.org; Thu, 19 Apr 2018 03:07:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f93eo-0001NT-7Z for bug-guix@gnu.org; Thu, 19 Apr 2018 03:07:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:52135) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1f93eo-0001NO-2a for bug-guix@gnu.org; Thu, 19 Apr 2018 03:07:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1f93en-0002Lj-RN for bug-guix@gnu.org; Thu, 19 Apr 2018 03:07:01 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <20180418205236.GA26365@jasmine.lan> (Leo Famulari's message of "Wed, 18 Apr 2018 16:52:36 -0400") 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: Leo Famulari Cc: 31210@debbugs.gnu.org Leo Famulari writes: > On Wed, Apr 18, 2018 at 03:14:45PM -0400, Mark H Weaver wrote: >> I suggest that we add a phase to the replacement 'perl' to install a >> symlink from $out/lib/perl5/5.26.1 pointing to "5.26.2". >> >> Would you like to try this, Leo, and push it if it solves the problem >> for you? > > Thanks for your advice. The attached patch fixes the issue for me. > > I would have pushed it but there is one thing I don't understand. Before > I set (replacement #f), the build would fail because the new phase was > run twice, and symlinking fails because it is not "forced" (as in `ln > -sf`). Is this expected behaviour? The problem is that you should never use 'package/inherit' to create a graft. That leads to an infinite tower of grafts. I'm surprised it works at all, but it's definitely not right. Use (package (inherit ...) ...) instead, and leave out the (replacement #f). Thanks! Mark