From patchwork Fri Feb 2 16:31:14 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jonathan Brielmaier X-Patchwork-Id: 59693 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 AC55627BBEA; Fri, 2 Feb 2024 16:32:03 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable 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 886AA27BBE9 for ; Fri, 2 Feb 2024 16:31:59 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rVwSJ-0006yl-Ad; Fri, 02 Feb 2024 11:31:55 -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 1rVwSG-0006yA-Ib for guix-patches@gnu.org; Fri, 02 Feb 2024 11:31:52 -0500 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 1rVwSF-0007CI-Ph for guix-patches@gnu.org; Fri, 02 Feb 2024 11:31:52 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rVwSQ-0005o4-Hn for guix-patches@gnu.org; Fri, 02 Feb 2024 11:32:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68876] [PATCH 2/2 maintenance] doc: guix-days-2024: Add notes about CLI session. Resent-From: Jonathan Brielmaier Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 02 Feb 2024 16:32:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68876 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68876@debbugs.gnu.org Cc: Jonathan Brielmaier , leirda@disroot.org Received: via spool by 68876-submit@debbugs.gnu.org id=B68876.170689151522301 (code B ref 68876); Fri, 02 Feb 2024 16:32:02 +0000 Received: (at 68876) by debbugs.gnu.org; 2 Feb 2024 16:31:55 +0000 Received: from localhost ([127.0.0.1]:45489 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVwSI-0005nc-Me for submit@debbugs.gnu.org; Fri, 02 Feb 2024 11:31:55 -0500 Received: from mout.web.de ([212.227.15.14]:37211) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVwSF-0005nI-J8 for 68876@debbugs.gnu.org; Fri, 02 Feb 2024 11:31:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=s29768273; t=1706891494; x=1707496294; i=jonathan.brielmaier@web.de; bh=Hh9vtpx6oUB83+/76lhG45GBm8vicjoCoEU+e46loAE=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To: References; b=Uy/Q2Arwe3g2HbpJF2q1XKQ73ZbIWzG8VFbyqYQZ/JoJazYcCBsoWs3tyFyIdNuP hP6X2L7hktPwuQE10sO2P2c6FaN9oyKtiHXBsmC6pIOyswnpWhm4WbNYJsTqHktKt hgB7iUd778pfPGhtWjcQIrDUxfJcQNKGksEM6zHx39nSytnAtUZP7xchmDSkIh2gl PNAI5VRxH1+GOa9LO3xtVn/GFzDTuKhjET4bysO7bCuh+vWZrQ677K9k8vHzjKlzm W93bkG7WXVjTBScvdxDoa05KbVTK2jKBO/useu+DEhNqvy6NOHeN5PocafCWzeCq7 j+yonB78Y24Tx9X4+Q== X-UI-Sender-Class: 814a7b36-bfc1-4dae-8640-3722d8ec6cd6 Received: from localhost.localdomain ([85.28.89.231]) by smtp.web.de (mrweb006 [213.165.67.108]) with ESMTPSA (Nemesis) id 1MaHSb-1rZ3cx01ED-00WGqZ; Fri, 02 Feb 2024 17:31:34 +0100 Date: Fri, 2 Feb 2024 17:31:14 +0100 Message-ID: <20240202163114.7759-2-jonathan.brielmaier@web.de> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240202163114.7759-1-jonathan.brielmaier@web.de> References: <20240202163114.7759-1-jonathan.brielmaier@web.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:u+IrYvpEJi9o4/kG2xJ8QixaLgAFEMw9CW50Gz/ZxIvnypP9lD7 qnJz5qKFotHBoMqqmZZOzavJUBHeVacDXKfhbv628WaWbJOtJL+ZnAuoLLZGdHJgjc7x014 6CRK3ktvs8HS03bXLyuRyn37DZ4bpjnwyREhK7Cu6ONwZBPaPsTxyAkdKVyiclnaPhGSHXJ 9I2pr/PjNDRLb4X0dp7TA== UI-OutboundReport: notjunk:1;M01:P0:vT5PKqk5XPs=;ky6S/smRxPEaENOfKOYpMrYDDEG VLQ6+UdqWUdrPaaZUODsDT1rmcGIS6ibBPROJAjKij19Oj7deQYnVTmbX9MOqtoz4IdQAss1n uqpmnx3HMvnYInoyMkPld21wxyx4W0A+MfDM0GqLl7Ek5boza9rMGOyZRNuop3PtuPEMlpwBK xFsQg5S2w7FXZbPDCNE0w1Tg7aOAg71zINDf6MR2nDs0B546jrqpM+3hGpo7sRV2JkBlSjG0V /8/19RgEDt2brKS7QY+8l1ZV2PNhLzrf/fi+CmSCd3DPwEBmk2cB1iWwap7tlFsaLADrK3/Mr TxgF8cwPQMlfU1nYGOF18upEDdPQYf40Lu1/sy1a0+VR/kdzNYPhKF2u+dY4ioT/1LsQEs8kv Z6TqFDtrBo6RlOIMZBsEj+CiAkhvqurTHFWJfi/uUu/Ot+BNjY13gZm9UsfSR62nRc212fWdy WIagD7xzOqYe66fLGCgaYm7lhelV9R2iMLUtXnFIvtzW+0cyh96RzXUFNcqjHURBTHmljSq0g xJXV897LbPQokHGSt6t8RqN/EUY75A9OCKmy47NNe6+f7+p0b2uE1tct/fd4VofIz3bOsns9e vKloLBTbHdryGDO8N2pSQuDUT8sgrlKGyUQ6hPhmzL/AYZJ65ko/vk2U/rqfJIQkcSCORH7Xs 0g1HPKo/xcLpZ9E/k3d+lHJRWH9eZ2nssDvWudy2R/hh0X/r9V11cz3wisndfMuXw9CPzbXZg IPR4WFE3OPyx4l6are2amtFrxlkS/ZIQ9jOk72R3qooa2gwfbSf8h1AWjizEokhRpAlePDU5D D/wVtm53Y5vXyhj+4GBY/l5B4veHfNrSf7BRfEIujLNgk= 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: , Reply-to: Jonathan Brielmaier X-ACL-Warn: , Jonathan Brielmaier via Guix-patches X-Patchwork-Original-From: Jonathan Brielmaier via Guix-patches via From: Jonathan Brielmaier 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 * doc/guix-days-2024/cli.md: New file. Co-authored-by: Adriel Dumas--Jondeau --- doc/guix-days-2024/cli.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 doc/guix-days-2024/cli.md -- 2.43.0 diff --git a/doc/guix-days-2024/cli.md b/doc/guix-days-2024/cli.md new file mode 100644 index 0000000..7d7808d --- /dev/null +++ b/doc/guix-days-2024/cli.md @@ -0,0 +1,30 @@ +# CLI of Guix + +## How a perfect CLI would look like? +* consistent +* self-explaining +* intuitive +* mapping between API and CLI (e.g. easier REPL) +* output can be parsed (composability) +* flexible outputs +* override defaults (aliases or extensions) +* should be fast +* auto completion, support for tabbing + +## What's the current state (good or bad)? +* consistency in conventions (mostly) +* fast tab completion +* 39 top-level commands (`guix top-level-command`) +* guix refresh / lint / style / challenge / download / hash are toplevel but really specific +* Some options are not consistent between different commands + * `guix system list-generations` vs `guix pull --list-profile` +* the `guix import` command is hard coded so we can't plug new importers with a channel for instance +* the order of channel specification is important in regard to definitions (might not be the case anymore) +* there's a common confusion between the name of the package and the name of the variable that holds the package + +## What we can improve +* make guix extensions / modules more accessible + * there's something about that on a git repo of Andreas +* package name writing differs between CLI and code (e.g. "glibc:debug" vs glibc `("debug")) +* `guix shell --development spec` should accept a = sign (`guix shell --development=spec`) +* Having a equivalent of the CLI example for the REPL in documentation