From patchwork Sat Sep 26 22:46:16 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jesse Gibbons X-Patchwork-Id: 24334 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id D097227BBE8; Sat, 26 Sep 2020 23:47:25 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL,T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 0680027BBE9 for ; Sat, 26 Sep 2020 23:47:25 +0100 (BST) Received: from localhost ([::1]:40858 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kMIyS-000410-6j for patchwork@mira.cbaines.net; Sat, 26 Sep 2020 18:47:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39290) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kMIy6-00040s-KB for guix-patches@gnu.org; Sat, 26 Sep 2020 18:47:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:36466) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kMIy6-0006zN-Ag for guix-patches@gnu.org; Sat, 26 Sep 2020 18:47:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kMIy6-000571-5U for guix-patches@gnu.org; Sat, 26 Sep 2020 18:47:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#43193] [PATCH] guix: Add --with-dependency-source option Resent-From: Jesse Gibbons Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 26 Sep 2020 22:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43193 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?utf-8?q?Court=C3=A8s?= Cc: 43193@debbugs.gnu.org Received: via spool by 43193-submit@debbugs.gnu.org id=B43193.160116038919608 (code B ref 43193); Sat, 26 Sep 2020 22:47:02 +0000 Received: (at 43193) by debbugs.gnu.org; 26 Sep 2020 22:46:29 +0000 Received: from localhost ([127.0.0.1]:48012 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kMIxZ-00056B-3M for submit@debbugs.gnu.org; Sat, 26 Sep 2020 18:46:29 -0400 Received: from mail-pl1-f180.google.com ([209.85.214.180]:43456) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kMIxV-00055u-N8 for 43193@debbugs.gnu.org; Sat, 26 Sep 2020 18:46:27 -0400 Received: by mail-pl1-f180.google.com with SMTP id e4so1303170pln.10 for <43193@debbugs.gnu.org>; Sat, 26 Sep 2020 15:46:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language; bh=TfrrivFkJiF8MVWcZgjo+/2NOFiqjlWPvzjft7B3xtA=; b=DyuV8MMQeBgoJwOxU1SZOMIR9ifqKyZwlNE21V2yH5VowmOtJa51owm/CmEp2E7LVS N87thVy6GRmzBaDM6IQGm9tjhw6U7Od++viJbdww+UErPY8pq7eyNfZuWsk0X3aKEr+o ZpC504lI9M0Se+C/Tvvw77BpwdZizhhDtBspNoo0cY1qxtqti965Qh5fYNkBANfdAtZW ysTf71QNbGLHnqxh0cfPflWnDmo97Z1cNscIDRjS5xsGK/V11GJKG9sK0R50On6pK52v 2tYLhRDFAxi9XlfePrX0RjbHYqpP6rfN0l4QIXNJ4IyZLEKUeCbTHwMm8sBdsy8eHqHR Fi6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language; bh=TfrrivFkJiF8MVWcZgjo+/2NOFiqjlWPvzjft7B3xtA=; b=CLT0vSYBWySUkEw307aiepoDFd/IlGKkFCAuvBRJA5yK2Hk9peOuGKHjfP/WiXVf6u tBo9m91xmgzP9n5VCy4wQbv33HTcAM/0XzaGX/woQFVaJElALY3xLeMmNPGTOwMN9rIc c5GtieRa8Ww0ZJf/93DUb8Gsll+IXWrUueBBugwbbKnYMx+UjNdJQJ4InFXyGBJBwaot VYPL0++OblCo4r8JTxalcvWBDOT4E+T3LcRPt0GeGaW9sOUpriq9R8YzAwjcc9s3y2Uk DSnnwcdRl3HhWafZ8r3LUaXQrH/la2nX7R4NeLRk/xhb8wQdNp9PsZGFvccOe2akKcju MP/Q== X-Gm-Message-State: AOAM531toDAwNcMYGq7tiLiBVnNR/JbKpbGtfQkqGFcQIYLXK9wGA4vJ Ym6HAjtxZC+/ohKdN6iugotewzsgL6Y= X-Google-Smtp-Source: ABdhPJxYeT9DmWwA2Fg3CyWTCD0LkFG94iJAT38ACIYv0/vs6IJ69TS0pIyVVvSuMckX+bqKeXAfgw== X-Received: by 2002:a17:902:8e88:b029:d2:42fe:394b with SMTP id bg8-20020a1709028e88b02900d242fe394bmr5202316plb.41.1601160379257; Sat, 26 Sep 2020 15:46:19 -0700 (PDT) Received: from [192.168.1.25] ([38.141.58.134]) by smtp.gmail.com with ESMTPSA id r188sm2593094pfc.67.2020.09.26.15.46.17 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 26 Sep 2020 15:46:18 -0700 (PDT) References: <9c3a00ba-19bf-a8e9-8803-d150e91f1b6e@gmail.com> <87y2lige5l.fsf@gnu.org> <7f52c72f-c280-b585-d1ad-ca012f804910@gmail.com> <87wo10s4j6.fsf@gnu.org> <4c890f8c-539c-1c9c-f558-7ba01cffa480@gmail.com> <87y2ld7s5b.fsf@gnu.org> From: Jesse Gibbons Message-ID: <9c60e5f2-e9fa-55c9-863f-cc3bccc2cf15@gmail.com> Date: Sat, 26 Sep 2020 16:46:16 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Icedove/68.12.0 MIME-Version: 1.0 In-Reply-To: <87y2ld7s5b.fsf@gnu.org> Content-Language: en-US X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Attached are the patches that make the --with-source option recursive, add documentation, add a test, adjust a test, and update the news. As expected, the changes I made are incompatible with the test "options->transformation, with-source, no matches". Since options->transformation, with-source does a recursive replacement, it returns a clone of the package in question. I have tried changing the comparison to eq?, eqv? and equal?, each returning false, so I settled on a (limited) comparison of the packages' attributes. On 9/13/20 6:55 AM, Ludovic Courtès wrote: > Hi, > > Jesse Gibbons skribis: > >> On 9/11/20 9:43 AM, Ludovic Courtès wrote: > [...] > >>> So maybe drop the second clause for non-recursive replacement, and drop >>> ‘transform-package-source’ as well. >> I included a fallback to transform-package-source because the >> following happens: >> >> $ ./pre-inst-env guix build --with-source=$(guix build --source hello) hello >> guix build: error: invalid source replacement specification: >> "/gnu/store/hbdalsf5lpf01x4dcknwx6xbn6n5km6k-hello-2.10.tar.gz" >> >> This does not fail when I fall back to the non-recursive logic. >> >> I can drop transform-package-source, but I will need to do some more >> hacking to figure out how the package name and version are parsed from >> the file name as described in the manual, and move it to the logic in >> transform-package-inputs/source. > Yes, that’d be nice. Namely, if you do: > > guix build hello --source=hello-1.2.3.tar.gz > > it should work just as now (from the source file name, we assume that > the source applies to package “hello”). > > Conversely, doing: > > guix build hello --source=xyz-hello-1.2.3.tar.gz > > would have no effect. It would not even emit a warning, unlike now. > >> I'm not going to have as much free time starting next week, so I might >> not be able to do that for a while, but I will try to get it done >> ASAP. > Sure, let’s stay in touch, I think we’re almost done! > > Thank you, > Ludo’. From 738fdb35af1449e245ce2e48c266c82f798d89af Mon Sep 17 00:00:00 2001 From: Jesse Gibbons Date: Sat, 26 Sep 2020 16:29:25 -0600 Subject: [PATCH 2/2] news: Add entry for "--with-source" * etc/news,scm: Add entry. --- etc/news.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/etc/news.scm b/etc/news.scm index 1ef238ca2d..fcb195c679 100644 --- a/etc/news.scm +++ b/etc/news.scm @@ -13,6 +13,14 @@ (channel-news (version 0) + (entry (commit "2d2f6c97ad1deeb2fc8a214d992c7894a7c5e293") + (title (en "@option{--with-source} now recursive")) + (body (en "The @option{--with-source} common option now uses the +specified source for all matching dependencies of any packages guix is directed +to work with. This option is useful for all package maintainers, developers, +and, in general, all users who want guix to facilitate their rights to modify +their software and share their changes."))) + (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f") (title (en "New @command{guix git authenticate} command") (de "Neuer Befehl @command{guix git authenticate}") -- 2.28.0