"the NixOS Foundation in no way controls or governs the Nix community, which has, since its inception, demonstrated its ability to self-govern very well."
But since this issue has been ongoing for many months, it's not clear to me at all that it demonstrates the ability to self-govern.
Do you have thoughts on that?
A: The Nix community is and has long been a collaborative group, and the people in it have done a great job of self-regulating. The results, and the growth and health of the project are the best evidence of this. Like every successful organization, it has reached a point where a new level of structure and guidance is needed to scale and to meet the needs of an increasingly diverse set of participants. That is why we are seeing and facilitating the changes that are now underway.
And a follow-up question: Does DetSys's success depend on the Nix community? If not, is that because all the required contributors are in-house? And if yes, does that suggest that many months of dysfunction in the community are bad for DetSys?
A: DetSys and the Nix community are inextricably intertwined and healthily symbiotic and always will be. We are now seeing a period of growth in which necessary changes are being made on both sides. These changes will benefit both the Nix community and DetSys, together and independently.
I'll tell you what I am hearing, what pushed me into covering all of this. The show, our Matrix feedback rooms, our Telegram group, etc., have received numerous questions suggesting people are concerned about "investing the time" into learning Nix if "it's all just going away in a couple of years"—or some variation of that concern, over and over.
I was surprised and disappointed to hear that take. But that very well worded "open letter" has been shared around 10x times more than any comprehendible and digestible response. I conclude that many folks in the wider audience and community have only heard one side of this discussion.
Do you have any thoughts or responses to those concerns?
A: The Nix project and the Nix community both have very solid foundations and neither is going anywhere.
Nix is a twenty year old project, with thousands of contributors, that has been adopted by users big and small. This includes academia and small businesses, research institutions, governments and – controversially – military contractors. Many of these users are on funded timelines that span far beyond a couple years. Some of these projects and products will be supported for decades.
Nix is a very serious and very important project, running some of the most critical systems you can fathom. Nix is in the hot path of development and deployment for systems that protect human lives every day. Both the project and DetSys are focused on helping developers do their jobs better, with better outcomes. Developers work at organizations of all types and sizes.
I know this isn’t about us, but this is why Eelco and I founded Determinate Systems: to serve those users, to provide them stability, and offer the institutional and enterprise support they’re looking for.
Last question:
How would you characterize the Nix Community's role in producing Nix?
A: A funny thing about Nix is how the boundaries of the project can be unclear to users. When I was new, I had a hard time knowing if I needed to read the Nix manual, Nixpkgs manual, or the NixOS manual to answer a question. This is still true, but it has grown: now we have nix-darwin and Home Manager and the whole suite of excellent software from the nix-community organization on GitHub.
People on the internet occasionally talk about inscrutable errors or broken behavior in Nix when Nix-the-project has nothing to do with it and the issue lies solely in one of these projects. Similarly, folks often say they run Nix when they actually mean NixOS.
Collectively, whether we like it or not, these things are Nix, and the community is essential and irreplaceable. The collective burden carried by the volunteers who contribute to the project is astronomical, and watching Nixpkgs continue to be the best package repository on the planet is truly a marvel.
However, the question is probably more specific to the Nix tool. Nix has a much smaller set of contributors. Almost all of the very regular contributors do it as part of their job, and not by accident. Many of these contributors have chosen jobs to be able to make these contributions because of their love for Nix.
My position is that contributors to the project must be viewed as individuals, not as representatives of a company. The people on the Nix team are not there because they hold a certain job or work at a certain company. They’re there because of their history of good contributions. These individuals are members of the Nix community because everybody who is putting their weight behind the project or using Nix is part of the community.
The Nix team holds regular meetings and works closely together. This has been a great boon for the project, creating a team of equals who collaborate to build good software. Eelco alone was responsible for this for many years, and the creation of this team in 2022 removed a lot of the pressure he was under in that period.
Graham