# A call for the Nix team to present a unified front on the outcome and strategy around Nix flakes

**URL:** https://discourse.nixos.org/t/a-call-for-the-nix-team-to-present-a-unified-front-on-the-outcome-and-strategy-around-nix-flakes/54959
**Category:** Nix
**Created:** [October 26, 2024, 12:18am UTC](https://discourse.nixos.org/t/a-call-for-the-nix-team-to-present-a-unified-front-on-the-outcome-and-strategy-around-nix-flakes/54959 "2024-10-26T00:18:27Z")
**Posts on this page:** 1
**Showing post:** 113

<div class="post-metadata">

### Author: ![tomberek](https://discourse.nixos.org/user_avatar/discourse.nixos.org/tomberek/32/283_2.png) [@tomberek](https://discourse.nixos.org/u/tomberek)
#### Post date: [October 28, 2024, 10:08pm UTC](https://discourse.nixos.org/t/a-call-for-the-nix-team-to-present-a-unified-front-on-the-outcome-and-strategy-around-nix-flakes/54959/113 "2024-10-28T22:08:07Z")

</div>

There is not shortcut to success here, no single quick fix.

Some relevant references.

> [@Stabilising the new \`nix\` command line interface](https://discourse.nixos.org/t/stabilising-the-new-nix-command-line-interface/35531):
>
> tl;dr: Nix maintainers are working towards stabilising nix store commands, and plan to break down the flakes experimental feature into components that can be stabilised one by one. Background The Nix team was [founded in October 2022](https://discourse.nixos.org/t/nix-team-creation/22228) in order to support development of the Nix C++ codebase. The team started out on general topics to build trust and establish an effective work process, and we have seen good progress. We are meeting twice a week, and work on the agreed-upon issues in-between meet…

> <https://github.com/NixOS/rfcs/pull/136>
>
> Ever since the closing of \[RFC 49\](https://github.com/NixOS/rfcs/pull/49), we've… had the new CLI and Flakes marked as experimental, with no clear plan forward.
> 
> With the goal of ending this current limbo and soothe longstanding tensions in the Nix community, this RFC does two things:
> 
> 1. Establish general principles about Nix's architecture and evolution in order to ensure we do not get in this situation again.
> 
> Notably we are allowed to make breaking changes to experimental features, which includes both the new CLI and Flakes, until they are stable.
> 
> 2. Establish an incremental plan adhering to the principles deciding on the order and priority in which to stabilize these features:
> 
> - First, the non-Flakes CLI wll be stabilized, in phases.
> 
> - Afterwards, Flakes itself and its CLI components can be stabilized. The final design of Flakes will also require another RFC.
> 
> \[Rendered\](https://github.com/Ericson2314/nix-rfcs/blob/stabilize-incrementally/rfcs/0136-stabilize-incrementally.md)
> 
> \---------
> 
> \_A note to anyone leaving comments, remember the point of this RFC is \*not\* to debate the \*\*content\*\* of what is being stabilized, but debate the \*\*process\*\* of stabilization. To my fellow Flakes skeptics in particular, please hold back on the minutiae what you think is wrong with the design of Flakes, the new CLI or other features, or we will end up with another monster RFC thread that goes nowhere.\_
> 
> \_The current trajectory as far as I can tell, prior to writing this. is that we all of the sudden get a Nix 3.0 where a huge swath of stuff without review becomes stable at once. This is because many people in charge feel exhausted, and fear properly audit and debate the new features will devolve into yet another messy useless flame war.\_
> 
> \_Only by keeping the conversation narrowly on topic can demonstrate that a cordial compromise is possible\_

> [@RFC 0136 FCP, A plan to stabilize the new CLI and Flakes incrementally](https://discourse.nixos.org/t/rfc-0136-fcp-a-plan-to-stabilize-the-new-cli-and-flakes-incrementally/30961):
>
> The Final Comment Period for [RFC 0136](https://github.com/NixOS/rfcs/pull/136) has started and, barring any blocking issues, will be merged after 2023-08-05. Your opinions, comments, and approvals are welcome! [https://github.com/NixOS/rfcs/pull/136](https://github.com/NixOS/rfcs/pull/136)

Progress is slower than we would all like, but progress is being made. We’re somewhere around step 2 of RFC 136. The store library has been split out. Store-only CLI is possible, and commands have been added refined. Build system is refactored. The best thing at this point is help with the steps as laid out.

Jumping directly to flakes - the exciting stuff - is tempting, but help is needed with the un-exciting stuff as well. The key is incremental progress in small steps.

Edit: Additional item, a small step to fix some of the flake annoyances is a half-step toward lazy trees; lazy paths ([Lazy paths by roberth · Pull Request #11367 · NixOS/nix · GitHub](https://github.com/NixOS/nix/pull/11367)). I have wanted to help this get merged, but I apologize, I have not been able to do so in a timely manner.

---

_[View the full topic](https://discourse.nixos.org/t/a-call-for-the-nix-team-to-present-a-unified-front-on-the-outcome-and-strategy-around-nix-flakes/54959)._
