From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Specifying package patches in a more convenient form Date: Thu, 07 Apr 2016 23:54:49 +0200 Message-ID: <87wpo96q52.fsf@gnu.org> References: <1459917181-19626-1-git-send-email-ericbavier@openmailbox.org> <87wpobvssk.fsf@gmail.com> <87wpo9zqy5.fsf_-_@gmail.com> 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]:32936) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aoHtB-0001MB-9s for guix-devel@gnu.org; Thu, 07 Apr 2016 17:54:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aoHt7-0005PH-99 for guix-devel@gnu.org; Thu, 07 Apr 2016 17:54:57 -0400 In-Reply-To: <87wpo9zqy5.fsf_-_@gmail.com> (Alex Kost's message of "Thu, 07 Apr 2016 12:52:18 +0300") 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: Alex Kost Cc: guix-devel@gnu.org Alex Kost skribis: > Eric Bavier (2016-04-06 17:57 +0300) wrote: > >> On Wed, 06 Apr 2016 15:13:47 +0300 >> Alex Kost wrote: > [...] >>> > + "1lgghck46p33z3hg8dnl76jryig4fh6d8rhzms837zp7x4hyfkv4")) >>> > + (patches (map search-patch '("ttfautohint-source-date-epoch.p= atch"))))) >>> >>> Since it's just a single patch, I don't see a reason to use 'map' here. >> >> Just that it's less to change if more patches are added later. The >> same has been used in other packages. > > I strongly disagree with this policy. I think =E2=80=9Cstrongly=E2=80=9D and =E2=80=9Cpolicy=E2=80=9D are a bit= =E2=80=A6 too strong. ;-) > More patches may never be added, but mapping through a list of a > single element looks redundant for me. > > Talking about how we specify package patches currently, I think it would > be better to do it in a more clean and general way. What about adding > the following macro to (gnu packages)? > > (define-syntax-rule (search-patches file-name ...) > "Return a list of patches for each FILE-NAME." > (list (search-patch file-name) ...)) > > So instead of things like this: > > (list (search-patch "foo.patch") > (search-patch "bar.patch")) > > or this: > > (map search-patch '("foo.patch" > "bar.patch")) > > we'll have: > > (search-patches "foo.patch" > "bar.patch") I like it! > P.S. Actually, I don't like 'search-patches' name. Better ideas? No! I like it. Andy Wingo skribis: > What if the "patches" field just applied `search-path' to each of the > items in the list if the path is not absolute? Use > `absolute-file-name?' to check if this is needed or not. FWIW I have a preference for keeping things explicit. Thanks! Ludo=E2=80=99.