Nix release in Nixpkgs 24.05
- 2.21 or 2.22
- 2.22 is due next week
- Suggestion: aim for 2.22 and spend the month after its release focusing on bugs (ZHF-style)
- @thufschmitt will communicate about that in the Nixpkgs thread
CLI stabilisation
Make 'nix store gc' use the auto-GC policy by edolstra · Pull Request #7851 · NixOS/nix · GitHub
Still latest blocker for nix store
. @edolstra will finish it
Nix path-info
Alredy discussed, but didn’t open an issue.
Nix build
Also to translate into an issue
- @roberth did for half of the suggestions
- @thufschmitt to open for the other half
Output format (first iteration),
{
"installables": [
{
"outputs": {
"out": {
"path": "/nix/store/d29xassiyyf71ls2vbvx3vywrdcx52c3-hello-2.12.1"
}
}
}
]
}
nix develop
/ nix print-dev-env
- Stabilize the current behaviour as it is
- Add the
devShell
-based behaviour as per https://github.com/NixOS/nix/issues/7501
nix shell
- Big question: which environment variables to set?
- Trying to solve an infinite problem
- Should it be delegated to a
nixpkgs
cli? - Suggestion:
- Have it set a fixed carefuly picked set of variables (
PATH
,XDG_*
, etc…) - Defer the rest to a possible
nixpkgs-cli
- Have it set a fixed carefuly picked set of variables (
Suggestion for a naming scheme:
-
Rename 'nix shell' · Issue #4715 · NixOS/nix · GitHub
- somewhat old comment; main point is the system behind it, not the details, which need to be updated for
devShell
attr and package attrsets derivation
→devshell
(to mirrordevShell
attr)dev
is probably better becausedevshell shell
would be a pain, and short is good for frequently used command
- somewhat old comment; main point is the system behind it, not the details, which need to be updated for
-
Plumbing commands
nix dev
:devShell
attribute-based, or fall back tonix develop
-like behaviornix dev print-env
nix dev shell
nix dev run
nix dev script
(produce bash script, or should be print-env flag, or scoped out at first)
nix env
: modify the environmentnix env run
: setenv + execvp- @thufschmitt: Could just be a flag to
nix run
/nix package run
- @thufschmitt: Could just be a flag to
nix env shell
: setenv + start$SHELL
nix env print-env
nix package
: “normal” use of installable (whatever that means for the verb)nix package build
:nix build
nix package run
:nix run
nix package info
:--dry-run --json
, printmeta
nix package edit
:
nix sandbox
: issue tbd (@roberth)
-
Keep convenience aliases, at least for now
-
-c/--command
argument tonix run
- Just changes the thing that gets run
- Restricted to a relative path
nix run foo --command /bin/sh
shouldn’t be allowed