-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CLI stabilization effort #7701
Comments
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-01-27-nix-team-meeting-minutes-27/25434/1 |
Discussed in the Nix team meeting 2023-02-10: Decision: work through one complete command at a time and write down the process. once finished and everyone is confident to reproduce that process on one's own, do the rest of the work in parallel. Complete discussion
|
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-02-10-nix-team-meeting-minutes-31/25438/1 |
Two topics (with my PR fixes, if we like my solution) that I think would be good to track:
(My middle PR, #7610, corresponds to #7820 already listed here, so there is no need to link the issue directly.) |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-02-10-nix-team-meeting-minutes-32/25442/1 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/tweag-nix-dev-update-44/25546/1 |
Discussed general design considerations in Nix team meeting 2023-03-20: @Ericson2314 and @fricklerhandwerk prefer to have a clean separation of composable "plumbing" commands (reflecting architectural separation of store and evaluation layers) and convenient "porcelain" commands that aim for brevity and common use cases. Specifically it should be There was no conclusion. Although apparently this has been talked about multiple times in the past years, and @edolstra is (rightly) annoyed about rehashing the arguments, there seems to be no record of the prior discussions. (Help digging them out highly appreciated!) Complete discussion
|
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-04-14-nix-team-meeting-minutes-48/27358/1 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/nix-team-report-2022-10-2023-03/27486/1 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-08-28-nix-team-meeting-minutes-83/32290/1 |
Meeting notes 2023-09-01
|
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-09-01-nix-team-meeting-minutes-84/32466/1 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/nixcon-governance-workshop/32705/9 |
I would argue that almost all of the commands in the new CLI need a |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-09-25-nix-team-meeting-minutes-89/33489/1 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/2023-10-09-nix-team-meeting-minutes-93/34388/1 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/stabilising-the-new-nix-command-line-interface/35531/1 |
Just had a conversation on mastodon, where |
What is it supposed to collect? Although in any case it can be slightly misleading because if that command does the same as |
Exactly! We should address the mechanism first before piling up policy. |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/tweag-nix-dev-update-52/38343/1 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/contribute-to-the-nix-2023-recap/37484/13 |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: |
Why should |
This is a DRAFT
Tracking for the stabilizing effort:
Tasks
--help
options make senseThe goal isn't to stabilize the whole CLI at once. A bunch of less-frequent commands can wait for a bit while we focus on the most important ones.
First batch of stabilization
nix daemon
nix daemon
command #9647nix nar
nix nar
and subcommands #8875nix hash
nix hash
and subcommands #8876nix hash convert [--type sha256] --from (base16|...|sri) --to base64 strings...
nix hash path
nix hash path
, text hashing fornix store add
, and preparatory refactors #9815nix key
nix key
#8877nix config
nix store
nix store gc
nix store gc: Stabilize #7608min-free
andmax-free
config options, and remove--max
flag--max
is closer to the understanding of--min
and can/should also be idempotent relative to disk space?nix store ping
Stabilisenix store ping
#8914nix store info
nix store add-file
,nix store add-path
Stabilisenix store add
#8915--recursive
should be the default due to history and to match string-interpolation behavior--key value
orcreate PR to CLI guidelines--value1|--value2
Not a blocker for stabilisationnix store import
,nix store export
nix store delete
provide better information about why something was not deletedNot required for stabilisationMakeNot required for stabilisationnix store delete ./result
work #9475nix store optimise
To be discussed
Stuff that hasn't been processed yet
nix copy
nix copy
#8011nix describe-stores
nix help-stores
nix describe-stores --json
format is not extensible #7824nix {show-config,doctor}
under subcommands #7672nix path-info
path-info
and C++ path info fields #10498nix build
nix develop
nix print-dev-env
nix shell
nix run
nix search
nix repl
nix eval
nix bundle
nix edit
nix fmt
nix log
nix registry
nix why-depends
nix derivation
env
does not adhere to the JSON guidelines #9866nix profile
:nix profile
has bad UX #7966nix realisation
nix upgrade-nix
nix flake
Global concerns
Settings
toLocalStoreConfig
#7740--print-build-logs
from various commands #7820Blocked on installables
nix shell
nix shell
does not insertPATH
items in command line order #7905To stabilise in a later batch
These are low priority and have more involved background issues we have to clarify first
nix store cat
nix store ls
nix store copy-log
nix store copy-sigs
nix store diff-closures
nix store make-content-addressed
nix store path-from-hash-part
nix store prefetch-file
nix store repair
nix store verify
sigs-needed
only takes into account the cryptographic portion of the key, not the namenix store sign
-r
)--key-file -
to read key from stdin, exclusive with--stdin
, but then how to pass both via pipe?--pipe FD
for which--stdin
is alias for--pipe /dev/fd/0
?References
CLI Guidelines
legacy CLI mapping
The text was updated successfully, but these errors were encountered: