From patchwork Sun Apr 13 14:57:03 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Morgan Smith X-Patchwork-Id: 41629 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 580F527BC4D; Sun, 13 Apr 2025 16:09:38 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.4 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id D071927BC49 for ; Sun, 13 Apr 2025 16:09:36 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u3yxS-0004oh-MI; Sun, 13 Apr 2025 11:09:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1u3yxE-0004l3-0Q for guix-patches@gnu.org; Sun, 13 Apr 2025 11:09:05 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u3yxD-0000Su-L2 for guix-patches@gnu.org; Sun, 13 Apr 2025 11:09:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=FeO9AsHriOBuv4Xv8JdYjBUIRFck64r1S4x0kCOI1jE=; b=EHolIrRvDVSkVxaSZI0f5o0dLx/WulS0+xDLzCcP43W6T6MIF/YUF+aTAsFYogSV/7fvCB6ZcsMkM5go6q/YRSsiQlnI/OOCGhU4ppfRSRNUteVEHzhPI3eCjIyUY0joHFmmQqpqcroQ9qSu3Pb1nN6bkB/Dp62GWCgjK8Wh3NrD78nytRaqlDPq1w31qiRoNCMeFSQxjEiQMxmrxkKZ0EIBOnj2DiTA6f9cbaDpPH9AQBfarAPA1nuG3DKYVmoj9RN1xOqvOGNn14810xXJ7MzMthwqZla0DbVEz3ULaEWZKgn6Pqk+zijBDQTbsZ/QynLi5D5uZVuWbU2LtOc++A==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1u3yxD-0001Nh-GJ for guix-patches@gnu.org; Sun, 13 Apr 2025 11:09:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#76594] [PATCH v2 2/5] gnu: quilt: Use gexps. Resent-From: Morgan Smith Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 13 Apr 2025 15:09:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 76594 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 76594@debbugs.gnu.org Cc: Morgan Smith , liliana.prikler@gmail.com, maxim.cournoyer@gmail.com Received: via spool by 76594-submit@debbugs.gnu.org id=B76594.17445568955194 (code B ref 76594); Sun, 13 Apr 2025 15:09:03 +0000 Received: (at 76594) by debbugs.gnu.org; 13 Apr 2025 15:08:15 +0000 Received: from localhost ([127.0.0.1]:43389 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1u3ywR-0001Lf-3E for submit@debbugs.gnu.org; Sun, 13 Apr 2025 11:08:15 -0400 Received: from mail-bn7nam10olkn20805.outbound.protection.outlook.com ([2a01:111:f403:2804::805]:14176 helo=NAM10-BN7-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1u3ywK-0001KU-49 for 76594@debbugs.gnu.org; Sun, 13 Apr 2025 11:08:08 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=IlR0jqu0vgKcKx2ZgAGwyMwnItVDiIZFKqJ8UmEAstk0P1+RP+0hcgaPv3rEjsadshgw2U4zUf1doUvFLpr2Iiu3bPhepIgMtXt2j+jlBlxydnAxJ0m9MKtnp7+5ee0s7x2VGowkljXA5fMdStbiD8Rr4kEGvs07qtcJvRrHMrJnXHFgKPV5Zo//KVh5vGkOOeUkTnRoWrbt9jsykOwEsqfG8/Nto4yyFxF6KyAUBXNFWW7+wPZyalkhKvJULikMdRYPPmbdrQq285ow9XxrUg+Mtj2GFt8PgN4FMSk8ATfQT41Y5JSIneuOHvLF6Tr+qF0hooN7GCnNJVdMz43OGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=FeO9AsHriOBuv4Xv8JdYjBUIRFck64r1S4x0kCOI1jE=; b=uVmkwG7N8ARCqhEy1pGGLUNFglyYVHXpv3MoCeECUv9o/UfSHYie8bwlNXFm8x/KM0jaCG2q/s+taAVJXU0U9ZQPZbd50B53OAJ5r/aVQaM8Ai3ZbSwG9OnLAtBjJeJLfqKvrP4kpJ2RbtHasyyrRxWb751d5yavwEBzxN/9H5lfWNk4GGpl8hqassDozjITLKQV6o00gP7TojQ3PsVEQ1XYX8kMb29TWBvZKv8bJxkIK28XH5m01HVn6sJXdb3VQ6zMH/JkEWWWzbPb770iB5x5JMQf19as3mBPMm+V305YD0Oko3AEEQxJ0lBC9YFBtyXqBS91g32/GtOi8KTQgQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FeO9AsHriOBuv4Xv8JdYjBUIRFck64r1S4x0kCOI1jE=; b=QdT3mJuDDN8j430CeIt/R8B8/PR+IhCNSPHiMhCMrKyugs+tYxN1bmTN6QnZEKx7t6AG1qbvl34NFnT+JGPO/ADtDUFD9jEs8myC3VnVc02q4fyYpAEufcmN9XbbZIN+VbCH4XKD4IMpqyv8pBUcztOKIK7IU58zY2OY+NJiikoljK6HjNLLww1Qg/IrPLJy08UewPnST3IWnzEjJYsyIsFLZ6nQsdEC1NHmb5KU9R8u+ZTqg0J2JSDJnKtxcnqTu5t7rXZ32lKZs/dLSlvPcJoj1AfmjEmC5qDqGcFO4UE9Q/4DU8RWyWav4vpmND79qwOxIHkJgp5SuW0YgLTjbw== Received: from CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:610:1c4::17) by SA1PR84MB3165.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:806:251::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8632.29; Sun, 13 Apr 2025 15:08:04 +0000 Received: from CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM ([fe80::5c77:7a58:48ed:9aef]) by CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM ([fe80::5c77:7a58:48ed:9aef%5]) with mapi id 15.20.8632.030; Sun, 13 Apr 2025 15:08:04 +0000 From: Morgan Smith Date: Sun, 13 Apr 2025 10:57:03 -0400 Message-ID: X-Mailer: git-send-email 2.49.0 In-Reply-To: References: X-ClientProxiedBy: YQBPR0101CA0284.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:6d::23) To CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:610:1c4::17) X-Microsoft-Original-Message-ID: <1829dd855bdb81dadb373aa121503b857f220867.1744556226.git.Morgan.J.Smith@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR84MB3424:EE_|SA1PR84MB3165:EE_ X-MS-Office365-Filtering-Correlation-Id: df3401b9-1c88-476b-e415-08dd7a9cfd6e X-Microsoft-Antispam: BCL:0; ARA:14566002|461199028|8060799006|5072599009|15080799006|7092599003|19110799003|10035399004|440099028|3412199025|1710799026; X-Microsoft-Antispam-Message-Info: qNQ9AZFzNppVX0Mx4Zzh91h4793wzwEvvvr2UDH7Jqjf0cV6Zx2VpnypmdufubcmGSdAf9MlGTzNF7rk2SyQTTDgqbDA0nTymPooW9o6Ua7XFdhg3yaX6gcEGcbHWe1u3b+g1hJ9MGJ+UY7+01gTy/DtVMtVp0crJNkNhEnWBWArwmAeLhA+0xQyhbOgF79QjwDAdfOzZ5PtS16wG7j8fD4P2XaPbnvyV0vZNcfd8NazbS7i2j36YMFGKcjZ4USVkBtr0H9SSt+tWTOxsKKiwkcpucxYOUAUbA9A8eFY5q/KBO9YOZp5UfWzG7w/TQhqxejUBY1TCxa5+HviFThbp3nzK9kqg74w1zLGMPqsCmnZJM0sZdrGYGFUCGxr4hfYTUOzw6a5PTb6F8uMURcxyQcNuos9BmnP+cDVvVksK3Pe7TfNb68xPrRzCUliYIBtA2ACSEP8z/CoOV+o1T/cDKutBP93u+W9Fpn//GbTy9mHOypyxp0B7r0NGQ0+TCOmGmNNVp2rE1IR8jvmO7/aqryIt7nBX7S1IVEGIhIf48VlKmoKi54jkYHvcCmk9MeW9vTdIt1G1KdeShhiYi/yWJRFvbGqdj2wYHYpRM6HyYTOFoS3jG6/xj/azmrv0eztoGlC3FALPZdDM2T+Zmn9reIkD/sBptjCROcjP48pWg+437NtAGqlKj+DLzfZGtbTBDhAt5Pk65rObeomYN8d4CrhZlYAjdjVGWum+lhsQP7dJxGGDxZYD2KyQVKKW9D8D8drRgHO51PJxUHctYQmJA0XYVLztr/knD4e5cDU6fYeDsDZDYM2sgR7PI4fYILldbajs9Nuj/1IUEY1QAyFAIa3/Im7F72/6EJMWPOYHsU9aEpLSuc6X+1zx7OEvNR42xOkRZ7Th9rcduLrn4+PJQjUlr9An8JETU9Es58mhIR2h+rWkux6YWk3J8xLdPsn14ulEJ9VH8lPep552uyJwnOn59DvjKdPJoLse+o3AOoJgBYOgbxvUQwJbfF15a1RkcP4m+ccmwXTu7Vp9sNxU8MYFBKCxiXoYFiSkKEKaUGuvUyOW/2Yj3dIucBOZfMrHkWIPV3zfO7Hrrd5RW71AHfFeyEgg4xyMyHM8oOVGN76+9ZGueRPMIyEJ6eIby6m+l9/Zuo5rgvhu3Ij6REu9YVnwlMhF0c4ozWMNRJ0+kCTOMwLOi+7Iq+iBQ/19mbSk0qTDP2T4dQRdoD+mRkuKZLozc8hstJl6IwHX/L8ETZ1pdMejczMII9eKgLt3G7E X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: jcP8kmwG6qk4Q7ZGr1x++uJtACvD9Iq3R9lMLaEkgWwXaOVZUh7kmd5OlMeTOBoVZPZnC48+EI3XEOHMDmkFHlDNFi1JCycP+7DVhwPmLMXlSv+V3UJqWK4jLUJFwKC3pMD50NmO2dHPYbWkUqxdpL1/hqLM6F9KRJIQx8oJw8ILW0l73ys1+Quk7jtDElC4f37n80P2u+BMuARfo/FL2vtfog0Vkgqr0ShimY8fFD+RwRzdO6Yw7NuQwk7dBpnGyROXDOZZZsEPKa6ejO6TarAgFp9vTkmsSWu5lJW69l3Uj0/yL/CiRdPNaSisbkoHsnBje65Wj5ub+OLAjwwNAumSOT+kkiKzGHezPvupu0B8s/ONdWCUHVZ5HopOQObzuero3gN4fdbumKbIUDokSgX+4D5xpmoEKNLk0i8UlAU0sVaucTdliKxifs+RCXZKbosB7oUu9AvU7yJLbHX4y1kWoUZ08p3u0GoUd5aaeOtKtEALLyo5H/7bJ6nAXvWSZt0ECQStmTkwUbKoqTA0ydOhVmCJfPAKMxyCOtyRi56s0MzpSR7wQ0r/dhTvu0NfU7f0lrtgFt02ObNkxhUypErm9ERNT5lE1VlHP6H44ULPeUc/zconv0v7VjcwcUMeQkWAkL3KRqEOj2CeJBHGyKF0ELcHxJbqknWVo7Gx9Vx6ZlnWrTPTpgMr5z3/UGXPsLqNjEMBFJ2XUbCfe9hSWXXYgR0S7c6cqC7cdJ+gNCUND7lPdM4at/KljomXoxqKYkgYtaPM4f6aLrlk4qZNK6aa1rcYtnw/nfVRMBQSVAeXoH6iSWH2BaSK7EG20Los7tuH2yxhtBROg+i5oeLVSPCiHfP2Nco0/C3QFeJ+N1K9T+EXsyd1MKc26cVl2Ia1QXLw6W4H0jfwaMsxaTxT3Tn7OgdCzYOS1vVDnz6GLY21nRcsi4DgbSuxUuoH04lkNY9VyAIgPbQmmVukZhtx0fqKK6OPNn+ZJLtBD361tIayyWes/D/VyL+t/I5aGoQTzbWrTIVyPctSEirbST5lqvIxh47WVhLp2oVFafGdJcgM8OisBG+HPjFvKuS4K+QN+vJ0pDKrXYCkfhw/5DuHjZx7MiCARr06hwUWk1UIyNySAgY7u5usXhqyyQRRSzDzp8tnuw05bBVlLOa0rzC/K+g61NwoJtxNqDDK+Zt3UEkNErU+jHFe02nxejHZZxIErvutMvqqFD1EtCoxZ/1QinN9st6QNw4VEnuGMkgg3sGzSH5twLjKu7bTBWvt3mRL X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: df3401b9-1c88-476b-e415-08dd7a9cfd6e X-MS-Exchange-CrossTenant-AuthSource: CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2025 15:08:04.5423 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR84MB3165 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/patchutils.scm (quilt): Use gexps. Change-Id: I81373365d0729b90b3e31e122eaede2daa7ae5cb --- gnu/packages/patchutils.scm | 113 ++++++++++++++++++------------------ 1 file changed, 58 insertions(+), 55 deletions(-) diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 8ba227a3d3..07f1d671ed 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -52,6 +52,7 @@ (define-module (gnu packages patchutils) #:use-module (gnu packages gnome) #:use-module (gnu packages groff) #:use-module (gnu packages gtk) + #:use-module (gnu packages guile) #:use-module (gnu packages less) #:use-module (gnu packages mail) #:use-module (gnu packages text-editors) @@ -182,62 +183,64 @@ (define-public quilt (list gettext-minimal)) (inputs (list bash-minimal perl less file gzip ed - diffutils diffstat findutils tar)) + diffutils diffstat findutils tar + ;; for wrap-script + guile-3.0)) (arguments - '(#:parallel-tests? #f - #:phases - (modify-phases %standard-phases - (delete 'check) - (add-after 'install 'wrap-program - ;; quilt's configure checks for the absolute path to the utilities it - ;; needs, but uses only the name when invoking them, so we need to - ;; make sure the quilt script can find those utilities when run. - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((cmd-path (lambda (cmd) (dirname (which cmd)))) - (out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/bin/quilt") - `("PATH" ":" prefix - ,(map cmd-path - (list "bash" "diff" "diffstat" "ed" "file" "find" "grep" - "gzip" "less" "patch" "perl" "rm" "sed" "tar")))) - (wrap-program (string-append out "/share/quilt/scripts/backup-files") - `("PATH" ":" prefix - ,(map cmd-path - (list "find" "grep" "mkdir"))))))) - (add-after 'compress-documentation 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (substitute* '("test/run" "test/edit.test") - (("/bin/sh") (which "sh")) - (("rm -rf") (string-append (which "rm") " -rf"))) - (substitute* "Makefile" - (("^(PATH|QUILT_DIR).*" &) - (string-append "#" &)) ; Test the installed 'quilt' - (("export QUILT_DIR") "export") - (("\\| sort") (string-append "| " (which "sort"))) - (("\\| sed") (string-append "| " (which "sed"))) - (("(chmod|touch)" &) (which &))) - ;; Tests are scripts interpreted by `test/run` and may specify - ;; the execution of several tools. But PATH will be empty, so - ;; rewrite with the full file name: - (setenv "PATH" (string-append %output "/bin" ":" (getenv "PATH"))) - (substitute* (find-files "test" "\\.test$") - (("([\\$\\|] )([[:graph:]]+)([[:blank:]\n]+)" - & > cmd <) - (if (string=? cmd "zcat") - ;; The `zcat` program is a script, and it will not be able - ;; to invoke its `gzip` with PATH unset. It's a simple - ;; script though, so just translate here: - (string-append > (which "gzip") " -cd " <) - (or (and=> (which cmd) - (lambda (p) (string-append > p <))) - &)))) - (let ((make (which "make"))) - ;; Assert the installed 'quilt' can find utilities it needs. - (unsetenv "PATH") - ;; Used by some tests for access to internal "scripts" - (setenv "QUILT_DIR" (string-append %output "/share/quilt")) - (invoke make "check")))))))) + (list + #:parallel-tests? #f + #:phases + #~(modify-phases %standard-phases + (delete 'check) + (add-after 'install 'wrap-script + ;; quilt's configure checks for the absolute path to the utilities it + ;; needs, but uses only the name when invoking them, so we need to + ;; make sure the quilt script can find those utilities when run. + (lambda* (#:key inputs #:allow-other-keys) + (let ((cmd-path (lambda (cmd) (dirname (which cmd))))) + (wrap-script (string-append #$output "/bin/quilt") + `("PATH" ":" prefix + ,(map cmd-path + (list "bash" "diff" "diffstat" "ed" "file" "find" "grep" + "gzip" "less" "patch" "perl" "rm" "sed" "tar")))) + (wrap-script (string-append #$output "/share/quilt/scripts/backup-files") + `("PATH" ":" prefix + ,(map cmd-path + (list "find" "grep" "mkdir"))))))) + (add-after 'compress-documentation 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (substitute* '("test/run" "test/edit.test") + (("/bin/sh") (which "sh")) + (("rm -rf") (string-append (which "rm") " -rf"))) + (substitute* "Makefile" + (("^(PATH|QUILT_DIR).*" &) + (string-append "#" &)) ; Test the installed 'quilt' + (("export QUILT_DIR") "export") + (("\\| sort") (string-append "| " (which "sort"))) + (("\\| sed") (string-append "| " (which "sed"))) + (("(chmod|touch)" &) (which &))) + ;; Tests are scripts interpreted by `test/run` and may specify + ;; the execution of several tools. But PATH will be empty, so + ;; rewrite with the full file name: + (setenv "PATH" (string-append #$output "/bin" ":" (getenv "PATH"))) + (substitute* (find-files "test" "\\.test$") + (("([\\$\\|] )([[:graph:]]+)([[:blank:]\n]+)" + & > cmd <) + (if (string=? cmd "zcat") + ;; The `zcat` program is a script, and it will not be able + ;; to invoke its `gzip` with PATH unset. It's a simple + ;; script though, so just translate here: + (string-append > (which "gzip") " -cd " <) + (or (and=> (which cmd) + (lambda (p) (string-append > p <))) + &)))) + (let ((make (which "make"))) + ;; Assert the installed 'quilt' can find utilities it needs. + (unsetenv "PATH") + ;; Used by some tests for access to internal "scripts" + (setenv "QUILT_DIR" (string-append #$output "/share/quilt")) + (invoke make "check")))))))) (home-page "https://savannah.nongnu.org/projects/quilt/") (synopsis "Script for managing patches to software") (description