From unknown Sun Jun 15 08:16:26 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#69413 <69413@debbugs.gnu.org> To: bug#69413 <69413@debbugs.gnu.org> Subject: Status: [PATCH] guix: pull: prettify channel listing during pull operation. Reply-To: bug#69413 <69413@debbugs.gnu.org> Date: Sun, 15 Jun 2025 15:16:26 +0000 retitle 69413 [PATCH] guix: pull: prettify channel listing during pull oper= ation. reassign 69413 guix-patches submitter 69413 guix-devel-0brg6b@rdmp.org severity 69413 normal tag 69413 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 26 14:16:56 2024 Received: (at submit) by debbugs.gnu.org; 26 Feb 2024 19:16:57 +0000 Received: from localhost ([127.0.0.1]:59150 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1regT9-0007pi-6H for submit@debbugs.gnu.org; Mon, 26 Feb 2024 14:16:56 -0500 Received: from lists.gnu.org ([209.51.188.17]:42384) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1regT7-0007pV-7w for submit@debbugs.gnu.org; Mon, 26 Feb 2024 14:16:53 -0500 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 1regSg-0008FA-Q0 for guix-patches@gnu.org; Mon, 26 Feb 2024 14:16:26 -0500 Received: from [195.15.247.228] (helo=rdmp.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1regSc-0006iB-Or for guix-patches@gnu.org; Mon, 26 Feb 2024 14:16:24 -0500 Received: from [127.0.0.1] (helo=[IPv6:::1]) by rdmp.org with esmtp (Exim 4.96.1) (envelope-from ) id 1regRs-0001aP-2I for guix-patches@gnu.org; Mon, 26 Feb 2024 19:16:16 +0000 Message-ID: <3f64ef9053ccb085b479fc0ece69caece1f72ee2.camel@rdmp.org> Subject: [PATCH] guix: pull: prettify channel listing during pull operation. From: Dale Mellor To: guix-patches Date: Mon, 26 Feb 2024 19:16:15 +0000 Organization: DM Bespoke Computer Solutions Ltd Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.4 MIME-Version: 1.0 X-Host-Lookup-Failed: Reverse DNS lookup failed for 195.15.247.228 (failed) Received-SPF: softfail client-ip=195.15.247.228; envelope-from=guix-devel-0brg6b@rdmp.org; helo=rdmp.org X-Spam_score_int: 3 X-Spam_score: 0.3 X-Spam_bar: / X-Spam_report: (0.3 / 5.0 requ) BAYES_00=-1.9, RDNS_NONE=0.793, SPF_HELO_SOFTFAIL=0.732, SPF_SOFTFAIL=0.665, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: guix-devel-0brg6b@rdmp.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) wqAgKiBndWl4L3NjcmlwdHMvcHVsbC5zY20gKGd1aXgtcHVsbCk6IHVzZSBwcmV0dHktcHJpbnQt dGFibGUgZnJvbSB1dGlscwoKwqAgKiBndWl4L3V0aWxzLnNjbTogZ2l2ZSBwcmV0dHktcHJpbnQt dGFibGUgb3B0aW9uYWwgYXJndW1lbnQgdG8gc3BlY2lmeQrCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBvdXRwdXQgc3RyZWFtLgotLS0KwqBndWl4L3NjcmlwdHMvcHVsbC5z Y20gfCAyNCArKysrKysrKysrKysrLS0tLS0tLS0tLS0KwqBndWl4L3V0aWxzLnNjbcKgwqDCoMKg wqDCoMKgIHzCoCA0ICsrLS0KwqAyIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDEz IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2d1aXgvc2NyaXB0cy9wdWxsLnNjbSBiL2d1aXgv c2NyaXB0cy9wdWxsLnNjbQppbmRleCA1OGQzY2Q3ZTgzYy4uYzUyOTZjZjgwYTEgMTAwNjQ0Ci0t LSBhL2d1aXgvc2NyaXB0cy9wdWxsLnNjbQorKysgYi9ndWl4L3NjcmlwdHMvcHVsbC5zY20KQEAg LTg4MiwxNyArODgyLDE5IEBAIChkZWZpbmUgKG5vLWFyZ3VtZW50cyBhcmcgXykKwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChOXyAiQnVpbGRp bmcgZnJvbSB0aGlzIGNoYW5uZWw6fiUiCsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJCdWlsZGluZyBmcm9tIHRoZXNlIGNoYW5u ZWxzOn4lIgrCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAobGVuZ3RoIGluc3RhbmNlcykpKQotwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChmb3ItZWFjaCAobGFtYmRhIChpbnN0YW5jZSkKLcKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGV0ICgo Y2hhbm5lbAotwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNoYW5uZWwtaW5zdGFuY2UtY2hhbm5lbCBpbnN0 YW5jZSkpKQotwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoZm9ybWF0IChjdXJyZW50LWVycm9yLXBvcnQpCi3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAiwqAgfjEwYX5hXHR+YX4lIgotwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGNoYW5uZWwtbmFtZSBjaGFubmVsKQotwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNoYW5uZWwt dXJsIGNoYW5uZWwpCi3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLXRha2UKLcKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNoYW5uZWwtaW5zdGFuY2UtY29tbWl0IGluc3RhbmNlKQot wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA3KSkpKQotwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW5zdGFuY2VzKQorwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChwcmV0dHktcHJpbnQtdGFibGUKK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtYXAtaW4tb3JkZXIgKGxhbWJkYSAoaW5zdGFu Y2UpCivCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChsZXQgKChjaGFubmVsCivCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGNoYW5uZWwtaW5zdGFuY2UtY2hhbm5lbCBpbnN0YW5jZSkpKQorwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGxpc3QgKHN5bWJvbC0+c3RyaW5nIChjaGFubmVsLW5hbWUgY2hhbm5lbCkpCivCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY2hhbm5lbC11cmwgY2hhbm5lbCkKK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctdGFrZQorwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoY2hhbm5lbC1pbnN0YW5jZS1jb21taXQgaW5zdGFuY2UpCivCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIDcpKSkpCivCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW5zdGFuY2VzKQorwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIzptYXgtY29sdW1uLXdpZHRoIDEwMMKg wqAgOzsgVVJMcyBjYW4gYmUgbG9uZy4KK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICM6bGVmdC1wYWQgMgorwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgIzpvdXRwdXQgKGN1cnJlbnQtZXJyb3ItcG9ydCkpCsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChwYXJhbWV0ZXJpemUgKCglZ3VpbGUtZm9yLWJ1aWxkCsKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHBhY2thZ2UtZGVyaXZhdGlvbgrCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RvcmUKZGlmZiAtLWdp dCBhL2d1aXgvdXRpbHMuc2NtIGIvZ3VpeC91dGlscy5zY20KaW5kZXggMjlhZDA5ZDlmNzIuLjM5 YTM0MTM0NDU3IDEwMDY0NAotLS0gYS9ndWl4L3V0aWxzLnNjbQorKysgYi9ndWl4L3V0aWxzLnNj bQpAQCAtMTE5Miw3ICsxMTkyLDcgQEAgKGRlZmluZSogKHN0cmluZy1jbG9zZXN0IHRyaWFsIHRl c3RzICM6a2V5ICh0aHJlc2hvbGQgMykpCsKgOzs7IFByZXR0aWZpZWQgb3V0cHV0LgrCoDs7OwrC oAotKGRlZmluZSogKHByZXR0eS1wcmludC10YWJsZSByb3dzICM6a2V5IChtYXgtY29sdW1uLXdp ZHRoIDIwKSAobGVmdC1wYWQgMCkpCisoZGVmaW5lKiAocHJldHR5LXByaW50LXRhYmxlIHJvd3Mg IzprZXkgKG1heC1jb2x1bW4td2lkdGggMjApIChsZWZ0LXBhZCAwKSAob3V0cHV0ICN0KSkKwqDC oCAiUHJpbnQgUk9XUyBpbiBuZWF0IGNvbHVtbnMuwqAgQWxsIHJvd3Mgc2hvdWxkIGJlIGxpc3Rz IG9mIHN0cmluZ3MgYW5kIGVhY2gKwqByb3cgc2hvdWxkIGhhdmUgdGhlIHNhbWUgbGVuZ3RoLsKg IFRoZSBjb2x1bW5zIGFyZSBzZXBhcmF0ZWQgYnkgYSB0YWIKwqBjaGFyYWN0ZXIsIGFuZCBhbGln bmVkIHVzaW5nIHNwYWNlcy7CoCBUaGUgbWF4aW11bSB3aWR0aCBvZiBlYWNoIGNvbHVtbiBpcwpA QCAtMTIxMSw3ICsxMjExLDcgQEAgKGRlZmluZSogKHByZXR0eS1wcmludC10YWJsZSByb3dzICM6 a2V5IChtYXgtY29sdW1uLXdpZHRoIDIwKSAobGVmdC1wYWQgMCkpCsKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWFwIChjdXQgbWlu IDw+IG1heC1jb2x1bW4td2lkdGgpCsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29sdW1uLXdpZHRocykpKQrCoMKg wqDCoMKgwqDCoMKgwqAgKGZtdCAoc3RyaW5nLWFwcGVuZCAoc3RyaW5nLWpvaW4gY29sdW1uLWZv cm1hdHMgIlx0IikgIlx0fmEiKSkpCi3CoMKgwqAgKGZvci1lYWNoIChjdXQgZm9ybWF0ICN0ICJ+ dl9+P34lIiBsZWZ0LXBhZCBmbXQgPD4pIHJvd3MpKSkKK8KgwqDCoCAoZm9yLWVhY2ggKGN1dCBm b3JtYXQgb3V0cHV0ICJ+dl9+P34lIiBsZWZ0LXBhZCBmbXQgPD4pIHJvd3MpKSkKwqAKwqA7Ozsg TG9jYWwgVmFyaWFibGVzOgrCoDs7OyBldmFsOiAocHV0ICdjYWxsLXdpdGgtcHJvZ3Jlc3MtcmVw b3J0ZXIgJ3NjaGVtZS1pbmRlbnQtZnVuY3Rpb24gMSkKLS0gCjIuNDEuMAoK From debbugs-submit-bounces@debbugs.gnu.org Sat Mar 09 13:23:10 2024 Received: (at submit) by debbugs.gnu.org; 9 Mar 2024 18:23:10 +0000 Received: from localhost ([127.0.0.1]:34770 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rj1Lh-0005xT-Ol for submit@debbugs.gnu.org; Sat, 09 Mar 2024 13:23:10 -0500 Received: from lists.gnu.org ([209.51.188.17]:42196) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rj1Le-0005xE-6l for submit@debbugs.gnu.org; Sat, 09 Mar 2024 13:23:06 -0500 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 1rj1L7-0006Oc-2E for guix-patches@gnu.org; Sat, 09 Mar 2024 13:22:33 -0500 Received: from [195.15.247.228] (helo=rdmp.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rj1L5-0001BV-Fn for guix-patches@gnu.org; Sat, 09 Mar 2024 13:22:32 -0500 Received: from [127.0.0.1] (helo=localhost.localdomain) by rdmp.org with esmtp (Exim 4.96.1) (envelope-from ) id 1rj1KQ-0005Op-2R; Sat, 09 Mar 2024 18:22:27 +0000 From: Dale Mellor To: 69413@debbugs.gnu.org Subject: [PATCH v2] guix: scripts: pull: prettify channel listing during pull operation. Date: Sat, 9 Mar 2024 18:22:23 +0000 Message-ID: <20240309182223.2103178-1-guix-devel-0brg6b@rdmp.org> X-Mailer: git-send-email 2.41.0 In-Reply-To: <3f64ef9053ccb085b479fc0ece69caece1f72ee2.camel@rdmp.org> References: <3f64ef9053ccb085b479fc0ece69caece1f72ee2.camel@rdmp.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Host-Lookup-Failed: Reverse DNS lookup failed for 195.15.247.228 (failed) Received-SPF: pass client-ip=195.15.247.228; envelope-from=guix-devel-0brg6b@rdmp.org; helo=rdmp.org X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, RDNS_NONE=0.793, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: Dale Mellor , guix-patches@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) From: Dale Mellor * guix/scripts/pull.scm: use pretty-print-table from utils * guix/utils.scm: give pretty-print-table optional argument to specify output stream. --- guix/scripts/pull.scm | 24 +++++++++++++----------- guix/utils.scm | 4 ++-- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index 58d3cd7e83c..c5296cf80a1 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -882,17 +882,19 @@ (define (no-arguments arg _) (N_ "Building from this channel:~%" "Building from these channels:~%" (length instances))) - (for-each (lambda (instance) - (let ((channel - (channel-instance-channel instance))) - (format (current-error-port) - " ~10a~a\t~a~%" - (channel-name channel) - (channel-url channel) - (string-take - (channel-instance-commit instance) - 7)))) - instances) + (pretty-print-table + (map-in-order (lambda (instance) + (let ((channel + (channel-instance-channel instance))) + (list (symbol->string (channel-name channel)) + (channel-url channel) + (string-take + (channel-instance-commit instance) + 7)))) + instances) + #:max-column-width 100 ;; URLs can be long. + #:left-pad 2 + #:output (current-error-port)) (parameterize ((%guile-for-build (package-derivation store diff --git a/guix/utils.scm b/guix/utils.scm index 29ad09d9f72..39a34134457 100644 --- a/guix/utils.scm +++ b/guix/utils.scm @@ -1192,7 +1192,7 @@ (define* (string-closest trial tests #:key (threshold 3)) ;;; Prettified output. ;;; -(define* (pretty-print-table rows #:key (max-column-width 20) (left-pad 0)) +(define* (pretty-print-table rows #:key (max-column-width 20) (left-pad 0) (output #t)) "Print ROWS in neat columns. All rows should be lists of strings and each row should have the same length. The columns are separated by a tab character, and aligned using spaces. The maximum width of each column is @@ -1211,7 +1211,7 @@ (define* (pretty-print-table rows #:key (max-column-width 20) (left-pad 0)) (map (cut min <> max-column-width) column-widths))) (fmt (string-append (string-join column-formats "\t") "\t~a"))) - (for-each (cut format #t "~v_~?~%" left-pad fmt <>) rows))) + (for-each (cut format output "~v_~?~%" left-pad fmt <>) rows))) ;;; Local Variables: ;;; eval: (put 'call-with-progress-reporter 'scheme-indent-function 1) -- 2.41.0