From mboxrd@z Thu Jan 1 00:00:00 1970 From: iyzsong@member.fsf.org (=?utf-8?B?5a6L5paH5q2m?=) Subject: Re: [PATCH] gnu: Add ircii. Date: Tue, 02 Aug 2016 20:42:13 +0800 Message-ID: <87eg671gwq.fsf@member.fsf.org> References: <87fuqoe10m.fsf@we.make.ritual.n0.is> <20160802005413.GB15847@jasmine> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:34418) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUZ2A-0007Ax-5G for guix-devel@gnu.org; Tue, 02 Aug 2016 08:42:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUZ25-0001LD-3b for guix-devel@gnu.org; Tue, 02 Aug 2016 08:42:57 -0400 Received: from mail.openmailbox.org ([62.4.1.34]:37664) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUZ24-0001L4-TZ for guix-devel@gnu.org; Tue, 02 Aug 2016 08:42:53 -0400 In-Reply-To: <20160802005413.GB15847@jasmine> (Leo Famulari's message of "Mon, 1 Aug 2016 20:54:13 -0400") 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: Leo Famulari Cc: guix-devel@gnu.org Leo Famulari writes: > On Mon, Aug 01, 2016 at 07:34:49PM +0000, ng0 wrote: >> * gnu/packages/irc.scm (ircii): New variable. > > Cool! > >> + (snippet >> + '(begin >> + (substitute* "bsdinstall" >> + (("/bin/strip") "strip") >> + (("/bin/cp") "cp") >> + (("/bin/chmod") "chmod") >> + (("/etc/chown") "chown") >> + (("/bin/chgrp") "chgrp") >> + (("/bin/mkdir") "mkdir") >> + (("/bin/rm") "rm") >> + (("/bin/mv") "mv")))))) > > Does anyone else think we should put this origin snippet in a build phase > instead? Or, should we leave it in the origin, where it will be applied > to the source code provided by `guix build --source ircii`? I think it should be in snippet. The 'substitute*' doesn't introduce any guix specified modifitions, it removes the hardcoded paths. > >> + (delete 'check)))) > > Using '#:tests? #f' is preferred instead of deleting the check phase. > >> + (inputs >> + `(("libiconv" ,libiconv) >> + ("ncurses" ,ncurses) >> + ("openssl" ,openssl))) > > I noticed that the built package does refer to libiconv: > > --- > $ guix gc --references $(./pre-inst-env guix build ircii) > /gnu/store/0kml8g9fix69v00afv59ngf4lgfr1565-openssl-1.0.2h > /gnu/store/9maps38bsia0wcxm82h0v0p2dxyn8j35-ircii-20151120 > /gnu/store/9nifwk709wajpyfwa0jzaa3p6mf10vxs-gcc-4.9.3-lib > /gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23 > /gnu/store/xl19qrfzga52vrvp4ncccwjlnrjqwj95-ncurses-6.0 > /gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42 > --- > > But, libiconv is used: > > --- > $ strings /gnu/store/9maps38bsia0wcxm82h0v0p2dxyn8j35-ircii-20151120/bin/irc | grep iconv > iconv_close > iconv > iconv_open > iconv_open@@GLIBC_2.2.5 > iconv@@GLIBC_2.2.5 > iconv_close@@GLIBC_2.2.5 > --- > > Perhaps libiconv should be propagated? The iconv functions are provided by glibc, libiconv is for systems that do not use glibc. libiconv should be removed from inputs.