Skip to content

Instantly share code, notes, and snippets.

@jonringer
Last active September 28, 2025 18:22

Detailed Timeline of my participation with Nix

Pre-political burnout. May 2019 to May 2022

jonringer: This whole experience has soured my view of the larger nixpkgs community. And I’m sure a lot of people aren’t happy about the “hill I chose to die on”. But it seems a lot of individuals would rather exclude, shut down, or ignore individuals than try [to] come up with better practices to address situations in the present and future. As nixpgks [hopefully] continues to grow, the community will continue to face adversity; whether intentionally malicious or not."

jonringer, Nov 2021: It [RFC98] creates a situation where there's a moving target in what is considered acceptable behavior, only for the benefit of the moderation team.

Coupled with language like "fascism" and "bigotry" (which at least in US, has been diluted to mean loathsome), it's creating a situation where punishment can be handed out because behavior didn't "agree" with someone on the moderation team.

I do not want to be part of [a] community where a moderation team is projecting some type of cultural narrative across the entire community.

Interlude

NixCon EU Anduril Sponsorship Period

Sponsorship interlude period

joepie91: We do not feel safe in a community with people who feel comfortable openly posting this sort of thing, or who feel comfortable with others doing so. It sends a pretty clear signal that our safety and well-being is just not considered that important, and that no-one will have our backs when (not if) things go wrong.

jonringer: In the reverse, “the average contributor doesn’t feel safe knowing that they can be silenced, suspended, or banned for not exemplifying a particular world view point”.

It’s one thing if srid was inciting violence; but as far I can tell (which hasn’t been too much research), he is proclaiming dissatisfaction with “wokeism” (which includes many viewpoints). Extrapolating this to be “the sort of thing written by people who - quite literally - intend to murder us” seems disingenuous.

On a related note, having srid change aspects of this social media and blog site to prevent a ban action infers that contributing to NixOS may also include someone looking through your internet presence to find anything they may disagree with.

Whatever happen to, “I don’t agree with srid, but thankful for his contributions”. This kind of radicalization and stereotyping of individuals isn’t healthy for either side; if anything, it just creates more animosity. If this animosity continues, I feel like the Nix community will fragment, and that will be a huge paradigm shift as efforts to improve nix will be secondary to uphold a hegemony.

  • Dec 2023: Attempt to draft ASF sponsorship policy for foundation
  • 30 Dec 2023: joepie91 blows up on tomberek, and later me when addressing the behavior in matrix over a Jeff Bezos quote
    • joepie91: "I do not have any intention of "giving leeway" to someone displaying clear-cut abuser behaviour, as tomberek has done here [posting Jeff Bezos clip]. this is now a matter for moderation, as far as I'm concerned"
    • jonringer: "attacking someone directly isn't beneficial for either party: it is divisive and antagonistic. People can have differing views, it's part of being human. If [you] don't hold tomberek viewpoints in high regard, then ignore them. But attacking him and then asking for moderation to do something about it creates an environment of "I perceived offense, now I'm going to some regulatory body do something about it"
    • joepie91: "jesus christ, fuck off. how many times does this need to be said. your fucking commentary is not wanted. this is none of your business to comment on, and it has been made exceedingly clear above, several times, by several people now, that further discussion on here is not wanted. is it clear enough now?"
    • jonringer: "Nix community is my business. I've spent a lot of hours trying to make Nix / Nixpkgs / and Nixos better. I'm deeply invested in the well being of the community and related efforts."
    • joepie91: "that is not my fucking problem and this is not your fucking dispute to involve yourself in. you do not need to provide commentary on everything"
    • piegames: "Treat this thread as locked. Disengage now"
    • I create formal moderation complaint citing joepie91's behavior in matrix and in similar instances in discourse
    • I noticed that the post I wanted to reference was deleted
      • joepie91: "We do not feel safe in a community with people who feel comfortable openly posting this sort of thing, or who feel comfortable with others doing so"
      • (for context): I can't find anywhere where srid posted or advertised his blog. It was referenced by his discourse profile, but another community member took it upon themselves to read it.
    • When followed up months later:
      • Hexa: "the appropriate people have been contacted"
      • piegames: "I was going to give you a formal warning letter, but didn't have the energy"
  • 11 Jan 2024: RaitoBezarius becomes maintainer of Nix package manager
    • RaitoBezarius: "This release being broken on nixosTests.misc and potentially lib-tests and other things."
    • (Personal aside): I don't see any ill will in this contribution, but relevant to growing dissatisfaction of Nix-cli's complexity/maintainership causing regressions.
  • 13 Jan 2024: Nominate myself for RFC Steering Committee
    • "I’m tired of RFCs languishing" in reference to RFC 114, Code of Conduct.
  • 24 Jan 2024: Selected as RFC Steering Committee member

Displeasure over Moderation in Matrix

Domen leaving the foundation

  • 6 Mar 2024: Domen makes a negative post about infra team (hexa + delroth) wanting to self host the Nix cache
    • (For context): The cache is many hundreds of TB's, it's been append-only since it's inception. Egress of the cache alone would be very expensive.
    • 6 Mar 2024: Hexa, in foundation Matrix channel: "can we stop this FUD right now? this is uncalled for an a blatant misrepresentation of the infra team". screenshot
    • 8 Mar 2024: Domen removes himself from foundation board
    • 8 Mar 2024: Hexa, in foundation Matrix channel: "it is still here. is quietly leaving the foundation board the plan to adress that? I would really hope for a retraction". screenshot
    • 8 Mar 2024: Domen leaves foundation Matrix channel
    • 8 Mar 2024: Hexa, in foundation Matrix channel: "alright."
    • (personal aside): Related to this was delroth's insistance that he should be given AWS access to NixOS's infrastructure (TODO: find delroth's quote), and that Eelco's reluctance was impeding the infra team.

The commentary on Eelco sitting on leadership roles and not doing anything + not allowing contributions fully reflects my experience with joining the #NixOS infra team. When I expressed interest to join the infra team when it was clearly understaffed and malfunctioning, this was blocked for 6 months by Eelco, even though I was supported by the foundation board member nominally in charge of infra. The only way I was able to push through that (and am still able to push through that, when Eelco pops his head to try and make decisions even though he hasn't really touched the NixOS infra in years) is by having a massive ego and pushing other people around to ignore him when needed. That's not how a properly working team or project should operate, and these are not character traits which should be a requirement for people to contribute to the parts of Nix that Eelco is involved with.

NixCon NA sponsorship

Post sponsorship fallout

Save-nix-together letter, an ultimatum for Edolstra to abdicate himself

  • 21 Apr 2024: save-nix-together letter appears, written by "anonymous contributors"

    • Mostly fixated on DetSys and edolstra (the creator of Nix), this document attempted to plea for his abdication and discredit him by stating the following problems:
      • Allowing bad behaviour to persist in the community
        • "RFC98 (community team) getting concern trolled into the ground"
        • "People at all levels of the project have engaged in bad behaviour ... Especially if one is a committer, release manager, or heaven forbid, a Foundation board member or the Foundation chair, the existing moderation team cannot safely touch them"
      • Culture of responsibility without authority
        • "decisions can always be overridden on a whim by someone with authority"
      • Current sponsorship crisis
        • "Concern trolling threads on the forum" (likely in reference to my MIC thread)
      • Crossing of the trust thermocline by Eelco and the Foundation as a whole
        • "Practically every single contributor the authors have spoken with who is of marginalized background, and a number of those who are less marginalized, was considering leaving the community over safety concerns"
      • Eelco’s role in cultural corrosion in the Nix project
        • "Eelco should resign from all of his formal roles in the project and take at least a 6 months break from involvement at all, to allow the community ownership of the project to get on its feet in practice."
        • "Treating the project as if he owns it"
          • (personal aside): he did make it, and has worked on it since 2003
      • Building a culture of responsibility without authority (Yes, this section is essentially repeated. Because multiple authors)
        • "decisions like adding members to the team are overruled by Eelco on a whim without any recourse for discussion"
      • Ignoring people then relitigating (a term which will be relevant for my eventual ban)
        • Points out example where a github PR languished for some time
      • Keeping the project incapable of holding people accountable for bad behaviour (Yes, this section header is also repeated)
        • "This in turn directly disempowers the moderation team"
      • Eelco’s repeated undeclared, unmanaged conflicts of interest
        • "The fact that Eelco has been repeatedly unwilling to speak about conflicts of interest of any form is itself unbecoming of someone in any leadership position"
          • (personal aside, for context): A witch-hunt occurred where each member of the foundation was asked to publicly state if they had business ties to Anduril in the Foundation matrix channel
      • Anduril, DetSys and the sponsorship crisis
        • "This seeming complete non-movement on the issue led to, at least, delroth and hexa going on strike from the infrastructure team."
        • "From this evidence, it can be observed that Eelco and Graham strangely strongly want the Nix project to be able to be a vehicle for advertising Anduril."
      • Eelco’s apparent views on the sponsorship crisis
        • Some screenshots of edolstra liking posts that the "anonymous contributors" took issue with
      • DetSys relationship with Anduril
        • Some screenshots supporting, "Eelco works for Determinate Systems, who claim they cannot disclose whether they work with Anduril or military tech companies or not"
      • Conflict of Interest in his role in the CppNix project
        • Reasons that DetSys is intentionally sabotaging upstream Nix by providing tooling around nix installation and flake support
    • Conclusion:
      • "Although Eelco has made significant contributions to the ecosystem, he is also actively blocking progress on extinguishing practically all the current fires at the Foundation and in CppNix [upstream nix cli]."
      • "If there is no satisfying progress in action on Eelco’s resignation from positions of authority in all parts of the Nix project by Wednesday May 1, 2024, we intend to ensure this letter reaches a wide audience."
      • "It is now up to you [Eelco] to commit to changing"
    • (My personal speculation):
      • CppNix is a term that RaitoBezarius will later use often, especially after joining the Lix project (a Nix alternative)
      • Raito and joepie91 are the only people who I have seen use "marginalized [folks/contributors/people/background]" as a supporting argument, and are likely one or two of the authors.
      • Sharing insight of the moderation concerns points to Hexa and piegames being likely authors as well.
      • RaitoBezarius, joepie91, hexa, piegames are also all notably absent from signatures, although it is aligned with their demands stated in other forums
      • Likely many more authors, similar to eelco's abdication letter (mentioned later) had a dozen+ people drafting it.
      • Why make it anonymous? What are you hiding? Why have other people take the public endorsement risk?
        • (speculation/FUD): A potentially genius way to also seeing who else can be mobilized
  • 21 Apr 2024 10:27 PDT: A non-Nix contributor, ktemkin is the first to merge Qyriad's signature PR

  • 21 Apr 2024 11:26 PDT: IreneKnapp (RFC98 author, and non-Nix contributor) signs letter, merged by Qyriad

  • 21 Apr 2024 15:26 PDT: Final commit from "anonymous" KA author

  • 21 Apr 2024: delroth: "I do have issues with the tone, the suggested actions, and the ultimatum being given in public". mastodon link

    • (personal conjecture): Inadvertently admitted to making demands on the foundation in private, and that it was an establish standard operating procedure
  • 22 Apr 2024: piegames: "yes, "forceful" [in reply to delroth] is likely the plan here given that all other more civilized attempts have failed so far." mastodon link

    • (personal conjecture): Inadvertently admitted to working with others to author the letter, and deciding to make a public ultimatum

My suspension from NixOS

Hexa: We have given all the reasoning and insight we are going to give, hence asking for more is not only unproductive, it is also unreasonable and bordering on concern trolling. I will therefore suggest dropping the matter.

Eelco's abdication from the foundation and as a community leader

Eelco: I must express my deep disappointment and disbelief at the accusation of excluding people from minority or marginalized backgrounds. As someone who highly values diversity and inclusion, this accusation is not only unfounded but also insulting ... I remain committed to creating a community where everyone feels seen, heard, and valued, and I will not let unfounded accusations detract from this important work

  • (personal conjecture): Likely he was being attacked in private that his behavior (being nuetral about Anduril sponsorship, not wanting to ban me) was harmful to "marginalized people"
  • Community response: "it doesn’t fit that he published his response to the community outside of the community"
    • (personal aside): "The community wants you to change" was used many times up until this point, I assume Eelco didn't feel welcome in discourse anymore. Also would have been an invitation for publicly stating outrage.
  • 27 Apr 2024: Foundation board denounces Eelco's "On community in Nix" post, distances themselves
  • 28 Apr 2024: Eelco's abdication letter begins getting drafted by foundation and 14 other members
    • Hexa, RaitoBezarius, joepie91 amongst drafters
    • One drafter to Eelco, upon removing himself as signatory: "You need to add yourself as a signatory for it to appear amicable" (Edit history no longer visible without edit access after being published)
    • For context: Eelco had abdicated most power willingly over many years and has showed little interest in playing the role of BDFL.
      • (personal aside): However, with all the gas lighting going on, I assume the manner in which he was forced to resign he took issue with (e.g. lack of agency, under duress, and in response to a well-intentioned community letter)
  • 29 Apr 2024: Eelco's abdication letter is published on discourse
    • Calls to create a "constitutional assembly within 14 days"
      • Once established, "we [the foundation board] will delegate our power to institutions within that new structure"
    • Weirdly (personal observation), grahamc posts 4 minutes later with a standing ovation post
      • As co-founders of a company, it's not strange for them to be confidants. But, this just feels weird.
      • Was this him "repenting" to the mob?
      • Grahamc was also a target in the save-nix-together letter
  • 29 Apr 2024: piegames leaves moderation team
    • piegames: "in the end this is just a silly stupid software project"
      • (personal aside): I'm fine with overlooking statements made in frustration, but why invest yourself so much if you don't care about the project? Was the Nix community just a means to an end?

Constitutional Assembly zulip discussions

  • 2 May 2024: It was "decided" to use zulip for community governance discussions
    • Mostly cordinated on matrix and merged to nixos/foundation repo
      • CoC written mostly by endocrimes
      • Deescalation docs written by joepie91
        • (personal conjecture): WHY would you put someone with a history of escalating verbal harassment in charge of a deescalation document?!?
      • Infinisil, endocrimes, RaitoBezarius made zulip moderators
      • Banned individuals (myself, nrdxp, apcodes) are allowed to join, however:
        • "they get one shot to be in the conversation, with extreme prejudice"
        • "If they blow it, it's a permaban (for all community platforms, not just Zulip)"
  • 3 May 2024: I join zulip discussions, decide to delegate my voice to 5 others to avoid a potential permanent ban
    • Each member had been in the community or active with Nix longer than I have, and represents a "holistic view" of what I see as the Nix community
      • Inifisil: Amazing work maintaining the NixOS Module system, doing weekly videos in Nix subjects, package-by-name rfc, nixfmt rfc.
      • samueldr: Maintained NixOS Mobile, arm ecosystem, and various projects
      • ericson2314: Forward looking Nix-cli maintainer, implemented cross-compilation package splicing to nixpkgs, IPFS support for nix, and portable store rfc.
      • nrdxp: Co-21.11 Release manager, similar concerns over moderation actions and RFC98. However, since he was the author of RFC175 and suspended, he was also facing a potential permanent ban.
      • shlevy: Contributor since 2011, similar concerns over RFC98, and very adept at writing prose
    • Unfortunately, only Infinisil and Shea Levy took part in the discussion. And Infinisil largely participated as a moderator but not as an active pariticipant.
  • 3 to 7 May 2024: Shea Levy was very active in zulip discussions
    • For context: I received 1300+ notifications in a 36 hours period (from everyone participating, not just Shea Levy)
  • 6 May 2024: Marsam quotes that all white people are recovering racists
  • 8 May 2024 6:31 PDT: Hexa notes that Shea Levy been suspended until after the Assembly is formed
  • 8 May 2024: I express outrage toward Shea Levy's ban
    • squalus: "@hexa Why was Shea Levy suspended?"
    • Niko Cantero: "Any reason in particular you want to know?"
    • Danielle Lancashire: "We've spoken to the involved parties about the reasons for their suspensions and both have amicably agreed to them. In @shlevy's case this was primarily related to a pattern of bad faith invitations to debate that led to the exclusion of other participants"
      • (personal aside): It was revealed later that Shea's suspension was dropped unilaterally on him, he was just informed that they didn't agree with his style of discussion

jonringer: [In responsese to Niko] Because the intent of these discussions was to invite everyone in good faith, heal wounds, and move forward together. Exclusion of individuals should be only be done if they demonstrate an inability to collaborate.

For every active participant in these discussions, there are many more who rarely or never speak. Shea levy aligns with some of my sentiments, so unless he has demonstrated a personal inability to conduct himself in a productive manner, then I believe he should be allowed to continue.

[In response to Danielle] I haven't been able to keep up with all of the discussion, but some concrete examples would be nice to dispel concerns for people not as engaged.

"pattern of bad faith invitations" feels very similar to "disagreeable viewpoints".

Personally, I'm concerned whether or not someone's voice is being silencde to deny them the ability to speak, or because they have actually used that voice for malice.

I said early on that I would delegate my voice to many others. But Shea was one of them.

  • joepie91: "This is not "demanding transparency", it is challenging moderation decisions"
  • jonringer:

It's about trusting the "system". Transparency is just one means of doing so. If people believe that Shea was acting in good faith, but was punished, then this brings into question the goal of unifying a diverse community as a whole.

Even if the "Nix community" moves forward with governance, but the process was seen as illegitimate, then the result will be viewed as illegitimate.

"Action speaks louder than words", there have been very few actions that have arisen out of all of this talk, Shea's suspension being one of them.

There’s no need to spend time digging up old screenshots, you can just ask what my views are.

Since you brought it up: Yes, I think that the 10/7 attacks revealed (again) that Hamas (and others who participated) are worse than savages and that they deserve obliteration.

I don’t see what possible relevance this has to the Nix foundation, but I’ll leave that to them.

  • 9 May 2024: Nix Constitutional Assembly Applications open
  • 10 May 2024: Submit my application to the foundation board to be an Assembly member
    • (personal aside): I was celebrating my anniversary, and wouldn't be back in time to type the application using a computer, so I was forced to write it on my phone. That's why the formatting is garbage.
  • 11 May 2024: Application is rejected:

Thanks for your application.

I'm sorry, and I trust that you're applying in good faith, but being suspended you're not in position to apply to this assembly.

  • 12 May 2024: Application is approved:

After discussing with the mod team, we agreed that suspended people shouldn’t be forbidden to apply. So I’ve forwarded your application here.

I’m awfully sorry for the undue rejection.

  • (personal conjecture): The selection process wasn't transparent, the moderation team probably wanted me to be publicly rejected.

  • 12 May 2024: I reply to letter:

I am applying in good faith. I've invested thousands of hours of my life in nix, and want to see the technology and community thrive.

Jonathan Ringer Former NixOS Release Manager

  • 9 May - Present: zulip discussions slow down significantly

  • 16 May 2024: Chris McDonough's, "Why a Generic Open Source Project Can't Also Be a Successful Civil Rights Project" post about his experience in the zulip discussions

    • "A general purpose open source software project can’t be an effective vehicle to also promote a civil rights goal."
    • (personal aside): Author was active in the zulip discussions, often against the political activists, and received a suspension

Pre-ban events

My permanent ban

jonringer: Holistically, silencing individuals with dissenting views just furthers division; as the individuals who may have considered themselves as part of the community now have to question whether or not they are able to participate freely. And those individuals will only confide in others who have shown "similar positions", thus creating a series of echo chambers within the community. Ideally people of different backgrounds can feel welcome to collaborate here.

  • 11 to 19 Jun 2024: Catch up on backlogged PRs and issues on github.com/nixos/nixpkgs.
  • 14 Jun 2024: Hexa attempted to remove me as a python maintainer on the 14th
    • Fully aware that I'm participating on github, but likely don't have my commit rights restored
    • (personal conjecture): This was an attempt to provoke me
  • 19 Jun 2024 03:36 PST: Domen replies in private DM: "could you post on the commit request [github issue]?"
    • (personal conjecture): This does put domen in a bit of an odd spot, "falling back to the normal" workflow was the conventional choice
  • 19 Jun 2024 10:36 PST: I reply: "sure"
  • 19 Jun 2024 14:13 PST: I post my initial commit request
    • (personal aside): While writing the request, it felt relevant to also state why I'm requesting my commit bit again
    • (personal aside): As I was stating that I suspended, I explained that github doesn't have a suspend action, so I was "banned" from the org, then re-added without my commit status being restored
    • (personal aside): Since I mentioned that my commit bit was taken, I also inappropriately decided to state that I didn't agree with the circumstances around my commit bit being taken.
    • (personal aside): After posting, it was made clear that also using that moment as a platform to state my personal grievances with my suspension was not appropriate, I later removed it.
  • 19 Jun 2024 14:43 PST: Hurt and emotional after 3 posts and a downvote brigade were made in opposition, I make a reddit post
    • (personal aside): In all of this, I think this was my one inexcusable action. I should just have confided with someone in private.
    • (personal aside): I did have a real fear of them dangling my commit bit and making me "repent" in order to get it back.
    • (personal aside): Also upon reflection during this period, I knew that the moderation team wanted to get rid of me prior to my suspension, and were just looking excuses to get rid of me; and that it was likely just a matter of time before I "commit a sin".
    • (personal aside): The reddit thread pretty much concludes that I shouldn't be making "appeals in the court of public opinion like this"
      • Eventually I agree after calming down. Remove the moderation grievances from my commit appeal.
  • 19 Jun 2024 14:47 PST: I create discourse thread to avoid polluting the commit request thread with additional posts which disagree with my commit bit

jonringer was banned for a vague and unjust reason. This community is far too large to expect to create a homogenous culture where we all agree on every nuance of what folks should believe, jonringer is a productive long standing member of the community, more long-standing than many of his detractors even, and the way he actually treats people is quite respectful.

The big one in this case though, is the first one. We don’t want to set a precedent of banning people for vague reasons, then requiring them to beg to get their commit bit back. The ban was wrong (reactionary) and unjustified, so there really shouldn’t be a debate.

I have removed the section about my personal grievances with moderation decisions, out of respect for you and the what the assembly are trying to achieve.

I will ask everyone to see how having dozens of people of people downvote and trying to squeeze you out of what you used to consider a home can be perceived. As much as I would like to come off a emotionally hardened stalwart of Nix excellence, I’m also human. I have emotions and aspirations of my own. Being met by hatred and vile everywhere for being stubborn about what I think are reasonable opinions (e.g. universal inclusivity, fair moderation) feels just bad.

Post Ban

The recent drama-crazyness that spawned in the community a few months ago has killed my motivation to keep contributing. I have been truly amazed and inspired by the overall commitment of most community members in improving things and keeping the boat afloat – whatever their vision of a successful community was. But I have also been deeply hurt by some behaviours, when people considered that pushing for their own idea of a successful community was worth spreading hate, defamation, fear and exclusion, or by the (too recurrent) thinking that one’s own agenda was more important than honesty, truth, and care for the others. ... I’ve also – as @balsoft just anounced – resigned from my role of Nix group lead at Tweag.

Comments are disabled for this gist.