Hi. I’ve seen in a few requests for people to talk to the foundation directly here about the direction Nix is going. Apologies for the large message, I have a lot to unpack.

I’m not very deeply involved in the Nix project itself: I’m an enthusiastic user, evangelist within my own tech social groups, and maintainer of a small number of packages. In a sense I’m a part of that “silent majority” everyone likes to declare is on their side, or doesn’t care about community drama.

So, here’s my feedback: https://determinate.systems/posts/on-community-in-nix/ is just about the worst possible thing I could imagine doing given the circumstances.

It clearly establishes that the board chair, and by extension the company he co-founded, views Nix as a Determinate Systems product that is under his sole authority. The tone of “teacher is disappointed at his children” is at best comically tonedeaf for someone in a leadership position, and at worst a straightforward indication of how little the foundation chair thinks of Nix users and contributors.

Posting this to Determinate Systems’ blog, rather than any of the many Nix community forums, is a further clear expression of intent: Determinate Systems claims ownership and agency over Nix, official communication comes from there. Former community spaces exist merely as a sandbox where the children can pretend to have a say. The kindest possible alternative interpretation is this was an attempt at “this is my personal opinion, while not wearing my foundation chair hat”.

Even if I assume that best possible intention (which I don’t, to be clear), publishing this demonstrates a comprehensive failure to understand power dynamics and how actions are perceived regardless of intent. It should disqualify someone from running a medium size birthday party, never mind heading something with the size, scope and stakes of Nix.

Until this week or so, I kept quiet and observed. It’s not the first time a FOSS community has struggled with governance, and it won’t be the last. I think it’s important to extend some goodwill and give project leaders (explicit and implicit) a chance to figure things out. But again, being as generous as possible, it’s been a year now since a crisis was obvious, even to me on the periphery of the community. As I understand it, to people more deeply involved, this has been brewing for much longer.

A year is quite a lot of runway. And at the end of it, as far as I can tell nothing has been achieved to mitigate the crisis, much less resolve it. And then, this morning, reading https://determinate.systems/posts/on-community-in-nix/ consumed the last bit of goodwill I was willing to extend.

Yesterday, I would have said a very narrow path still existed to avoid the collapse of Nix. Today, I don’t see how that’s possible. The only uncertainty that remains for me are how fast the collapse will be, and how many people it will hurt doing so. I am deeply saddened by this realization, as well as angry that even the simplest possible steps to back away from the cliff weren’t taken. Nix is a wonderful set of ideas, that are now going to be set back years more by a failure to understand that great ideas alone aren’t enough to construct a community.

At this point, I consider affiliation with the Nix ecosystem to be a reputational liability. I’ve privated my org membership and plan to leave as soon as my PR to drop maintainerships is merged. I’ve privated the github repo containing my nix configs to avoid implying an endorsement. In the next few days I’ll be stripping flake.nix/shell.nix/etc. from repos I own or have any say in. And I will be telling anyone who asks to stay away from Nix. Reimaging all my NixOS desktops and servers will take a while, but planning is actively underway.

To be clear, these aren’t threats or a negotiating position, they are statements of fact about what actions I’m taking. And no, I don’t expect the board to care about what I do. I don’t have a large audience, the part I play in nixpkgs is extremely minor, nobody is going to notice what I choose to use or stop using. I’m quite sure I won’t be missed, in terms of direct github org activity.

But you asked for feedback, and so here you go: I can see dozens of other people on my social feeds who are taking the exact same actions as me, with varying degrees of loudness. Some are community pillars (the “vocal minority” I believe Eelco called them), but many are just ordinary users and fans who are running for the fire exits, right now. Even if there is still a way to recover at this point, you have extremely limited time to do so before the network effect makes the trend irreversible.

I would like you to succeed, and to be able to once again proudly tell people about this cool thing I’m using that they should check out. I don’t think you will, and so I’m getting clear of the blast radius, but I will keep hoping nonetheless. Thanks Eelco for the interesting thesis, and thanks to the thousands of volunteers who made this thing work despite its broken governance.

I’m happy to clarify or expand if that would help. I’m not interested in having a debate however, thanks.