Live data from Hacker News

A leadership crisis in the Nix community

lwn.net

241–250 of 286 posts

Re: A leadership crisis in the Nix community

#241

> Anduril, a military contractor that uses NixOS, has repeatedly attempted to become a sponsor of NixCon, which did not go over well with the community Something similar happened in the Haskell community, where some people called for Anduril job postings to be removed. Nix is a software project, not a social movement. The goals of Nix are entirely separate from how the software is used. I really like Coinbase's state…

The issue isn't whether Anduril can use the the software. They can. This stemmed from whether they can publically attach their name to NixCon, which is fundamentally a social event.

Exactly. The license of software and code is not the surrounding community and events.

Likewise, support or protest against various sides in an international conflict does/should not affect the code/software, but is a product of the people involved and their personal convictions.

HN runs on open source software, but the HN community is strongly opposed to certain things, as is their right.

Re: A leadership crisis in the Nix community

#242

Earlier quoted context omitted.

> Nix is a software project, not a social movement. Upholding the status quo is a social (and political) movement, it's just the most popular and accepted one.

By that rational: Do you eat food, drink coffee, chocolate. Do you avail yourself of modern pharmacology. Everything you do upholds a status quo of human suffering. You posting on HN is a political statement, from a place of privilege, by that rational. It's a software project, dont make it political and it will be successful.

Yet you participate in society. Curious.

Re: A leadership crisis in the Nix community

#243

Earlier quoted context omitted.

> targeting "ideas rooted in fascism or bigotry" Is targeting "ideas rooted in fascism or bigotry" a bad thing?

What do you do when people who claim to be targeting fascist ideals also use the same tactics as those they're targeting?

Either side needs to be making factual and objective claims then. Slinging accusations of facism and retorting with the "you're the real facist" isn't going anywhere.

In practice there's probably no facism either way, but it's an easy and loaded term to throw around.

Re: A leadership crisis in the Nix community

#244

Earlier quoted context omitted.

> targeting "ideas rooted in fascism or bigotry" Is targeting "ideas rooted in fascism or bigotry" a bad thing?

Yes, because "ideas rooted in fascism or bigotry" is a vague phrase lacking any clear definition, and risks becoming a cudgel for cliques to use to shut down anyone who disagrees with them.

Slippery slope fallacy, however I agree the wording is too vague and needs to be more specified. Facism / bigotry are catch-all terms for a broad range of things, and the RFC should link to or include the definitions they consider, with a caveat that they may be updated at a later time.

Re: A leadership crisis in the Nix community

#245
post #235

Earlier quoted context omitted.

On one hand, I struggle to think that people might actually care about switching "master" to "main", as opposed to making wider improvements to inclusivity. On the other hand, I don't have a strong attachment at all to naming a branch "master" and can easily rename it without a second thought.

> I don't have a strong attachment at all to naming a branch "master" and can easily rename it without a second thought. It's easy only if you don't care about all the people who already cloned your repo. Recovering from remote repos renaming their default branches is no fun.

And yet, branches disappearing is not uncommon. Changing your remote branch name is trivial, but being made aware of it is the problem. It's been a while since this change was done, but if it was still being proposed, the git client saying "oi, this branch changed name" and offering to update things would be a bit more user friendly.

Re: A leadership crisis in the Nix community

#246

Earlier quoted context omitted.

> On one hand, I struggle to think that people might actually care about switching "master" to "main", as opposed to making wider improvements to inclusivity. I thought it wasn't a big issue until I saw how hard one side fought to keep the name "master". After that I changed my mind and name all of my branches main and give a little push to projects I'm part of to do the same. Plus, words do have power: https://www.y…

> I thought it wasn't a big issue until I saw how hard one side fought to keep the name "master". They only fight that hard because they know the people fighting to remove "master" are (as a group) acting in bad faith. On this and many other issues they tend to lie about history and language, extort those who don't comply with threats of sabotage towards their projects and/or careers, and will equivocate and dissembl…

I mean in the end it could have just been a polite request.

But a lot of people get very defensive about it, not just for practical reasons but out of fear of the slippery slope or the consequences of a perceived angry PC mob that can utterly destroy their projects and careers.

Re: A leadership crisis in the Nix community

#247

Earlier quoted context omitted.

> targeting "ideas rooted in fascism or bigotry" Is targeting "ideas rooted in fascism or bigotry" a bad thing?

Based on how these things have historically tuned out, yes. This is very problematic. The root of the problem is that it is basically impossible to defend yourself against the accusation that you are secretly a fascist. If you say yes, you admit to being a fascist, if you say no, you're a lying fascist. If you question why the accusation is levied against someone else, you're defending a fascist, if you speak out aga…

If you're secretly a facist, then there is no problem because there is no proof of facism, and the burden of proof is on the accuser.

Of course, there is a problem because mob mentality can be relentless.

Re: A leadership crisis in the Nix community

#248
post #9

The main reason for the persistence of Nix despite its warts and general mess is just "first-mover advantage": it was the first, therefore it has more libraries/packages/development of the ecosystem than the alternatives. Stop being lazy, go back to engineering first principles and it makes little sense to stay with Nix. Guix or any rewrite as a library in a well-developed language* makes more sense. *For example, wh…

Guix or any rewrite as a library in a well-developed language

The fundamental difference with Guix is that evaluation (what they call "host code" -- everything that happens BEFORE the .drv is written) is wildly impure.

Guile code can access the network, write to the filesystem, heck it can even pull bytes from /dev/random. It can delete your home directory or email your ssh private keys to Zimbabwe.

The Nix language, by contrast, is incredibly restricted in order to make evaluation a deterministic function of the .nix source code you give it, things whose cryptographic hash is in the .nix source code, and nothing else. There is an --impure flag which lets it read from (but not write to) the filesystem but nixpkgs does not use that.

That is a pretty big rift that I find myself unable to cross. I can eval Nix code from any random bozo on the interwebs without having to trust them. If I trust the nix sandbox (which I mostly do) I can even build the resulting drv. I can be sure that evaluating that Nix code will produce exactly the same drv two years from now that it did today. Guix doesn't offer those things. Because scheme. I'm sorry but scheme just isn't the right language for this, it's too powerful.

Re: A leadership crisis in the Nix community

#249
post #9

The main reason for the persistence of Nix despite its warts and general mess is just "first-mover advantage": it was the first, therefore it has more libraries/packages/development of the ecosystem than the alternatives. Stop being lazy, go back to engineering first principles and it makes little sense to stay with Nix. Guix or any rewrite as a library in a well-developed language* makes more sense. *For example, wh…

Cabal has had nix-style local builds since 2016: https://blog.ezyang.com/2016/05/announcing-cabal-new-build-n... https://cabal.readthedocs.io/en/2.0/nix-local-build-overview... Also cabal isn't positioned to be a system level package manager. Haskell programmers are the type to want both their application builds and system dependencies to be reproducible and predictable. > Stop being lazy, go back to engineering firs…

Cabal has had nix-style local builds since 2016:

That's a bug not a feature.

Every language these days is trying to force you to use its own badly-implemented imitation of Nix. Just look at what cargo does with the target/ directory and wonky "build fingerprints".

It's madness.

Re: A leadership crisis in the Nix community

#250

Earlier quoted context omitted.

closed source CPUs are also a thing i have invested inconvenient amounts of time in trying to overcome [1]. i expect by the latter decades of my life it will actually be feasible. i'll be honest i don't understand what point you're trying to make. if i owe some loyalty to the military for the conveniences of their products, then would not Anduril owe me loyalty for the convenience of my products? the actual request t…

> it's less "don't use our product" as "don't advertise in our spaces" I guess the problem here is the definition of "our". If Anduril sponsors development of nix, it's as much "their" product and "their" space as it is yours. Or in other words, they are included in "ours". You might not like that, but that doesn't change the facts.

i don't disagree with this. it takes care to figure out how to actually share the commons. despite my very obvious (at this point) anti-state motivations for being involved in open source, i've actually kept that discourse away from the NixOS spaces for two years. it's only after Anduril is reshaping those spaces to be pro-military that i bring my own world views into this space overtly.

i'm not certain of the ideal approach. i would be content with an agreement that our shared spaces be neither overtly pro nor anti military -- to the degree which this is possible or enforceable. but it is extremely difficult to actually establish consensual agreement on that, and attempting to force it (in any direction) leads to the type of escalatory situation you're watching unfold now.

my most honest takeaway is that NixOS doesn't deserve to be some monolithic thing. communities grow and reshape into loosely connected smaller communities as a pretty natural effect of success every day, and do so peacefully. there are plenty of spaces occupied by people i don't get along with (say, hyprland, or lemmy.ml), and i simply keep my distance. but nixpkgs is a monorepo, with intense infrastructure needs that require a foundation/governing body to meet. for as long as all of our work is so closely linked to that governing body and brand, there's little way for us to arrange ourselves into the more socially intuitive structures which allow for that type of "live and let live" approach wherein we all flourish even without finding consensus.

Post reply on HN