https://github.com/NixOS/nix/pull/9857
Installables syntax
Extra proposal:
-
Allow arbitrary fetcher refs as argument to
--tree--tree <fetchref>#attr.path, similar to--file $(nix flake prefetch <fetchref>) attr.path- Does
--tree /pathcopy /path into the Nix store? NO (as an exception/optimization) - Does this imply
--impure? YES - Note: the CLI already supports something like this:
nix build --file flake:github:NixOS/nix- we can remove support for this when we have--tree
-
Search for a
default.nixif noflake.nixfound (unless thereâs an explicit--flake)- Warn if not explicitly specified (at least for the time being)
-
For
--expr--expr "Nix expression"
-
Decision:
- Have #2 right now (Stabilize the (non-flakes) installable syntax ¡ Issue #10046 ¡ NixOS/nix ¡ GitHub)
- Also have
--treelike the proposal above (Add a `--tree` cli flag for evaluating a Nix file from an arbitrary fetchTree URL ¡ Issue #10047 ¡ NixOS/nix ¡ GitHub)- Remove the support for
flake:in--file(right now you can do--file flake:github:NixOS/nix)
- Remove the support for
Cleaning up experimental features
-
@edolstra: We really should have tracking issues for all of these
-
@ericson3214: Yes we should, I had made All experimental feature flags should have a tracking issue, shown in docs, and enforced mechanically ¡ Issue #9345 ¡ NixOS/nix ¡ GitHub for enforcing this. It should happen.
- post meeting: Marks that issue as a âgood first issueâ in hopes that someone picks this up
FetchTree
- @thufschmitt: We committed to stabilize after the previous release. Should do it now
NoURlLiterals
Shouldnât be an âexperimentalâ feature, rather a deprecated one.
Need a mechanism for deprecated features
FetchClosure
Already discussed in length. Recent behaviour change.
Depending on the feedback after that change, we could stabilize at leat part of it.
The pure CA part should (hopefully) be good to go
ReplFlake
Was here to provide a smooth transition for a breaking change.
Should flip the switch now.
@tomberek will take over.
AutoAllocateUids
- Can remove the experimental flag (still wonât enable the option by default)
- Doesnât fully work on MacOS (because canât fake
/etc/passwd, so breakswhoamiand friends)