> The Lix evaluation cache no longer caches failures, so “cached failure” is an error of the past.
If this means what I think it means, I might switch to this from nix.
I used to occasionally get errors that would be cached in such a way that on a rerun I wouldn’t get any info. The error itself would cache but not any of the details about the error. Was super annoying cause if I lost the error details for any reason I couldn’t see them again easily. I’d have to make a pointless change somewhere and trick it into rebuilding without the cache.
This seems like such a no-brainer architectural choice that it makes me wonder if there's some tradeoff I'm not seeing. Why would Nix have cached failures in the first place?
It seems to make more sense than not having them to me -- nix is all about reproducibility. If you didn't change anything, why would you get a different result? Instead of spending 15 seconds on evaluations, just tell me "you didn't change anything doofus -- cached error."
> If you are of a less-marginalised background, keep in mind that you are a guest in our spaces but are nonetheless welcome.
Hah, this line used to be even worse. More power to them - it’s clear from the docs that they want to focus a lot on marginalization/the Oppression Olympics. More power to them to do their own thing, hopefully their spaces are whatever they want and they all stay over there.
It can apply to anyone at any time once they decide for any reason to expel you.
The ambiguity is a feature, not a bug. They decide they don’t like your opinion about X? Cool, glad you were always a guest - it’s an arbitrary enforcement lever.
Same thing for “safety”. People claimed (in the Nix community) that all kinds of things made them feel “unsafe” - including the opinions of others.
I wouldn’t get involved in a community like that and think it serves a useful purpose to point it out, in case someone else would be similarly hesitant to join such a community.
The nice thing, at least, is that this particular kind of group always lose out in the end. They're divisive by nature and it always eventually turns in on itself. It's a matter of time.
Until then, things are not looking great. When one mod deletes threads because they've had a bad day and cant deal with drama, when other mods start teaming up against the only moderate voice for reaching out to ThE EnEmY, when a huge community member get permabanned for merely voicing disagreement with their own temporary ban (which in turn was only because they - wait for it - "encouraged debate"), it is clear that it won't be long before the community turns on them.
Its just a shame that the big forks are ones run by like-minded activists.
Given the recent upheavals in the Nix community, I have no doubt this is just the first fork, and we’ll see more in the coming weeks and months.
Nix is my daily driver, and I’ve been seriously considering ditching it until things settle down in the community and some fork becomes the favored option.
Before I’d consider Lix, frankly I need more information about the core team and their view of the events of the last 6 months. I’m primed to want to like this project, but I’m feeling really cautious after experiencing the particular kind of toxicity that was at the root of the turmoil.
Yeah, as I was reading the team page, I realized I have no idea how to judge these inevitable forks at the moment because while I’m a Nix user, I don’t know the individual community players well enough to understand their perspective and/or in involvement in the kerfuffle without digging deeper.
What I do know is that there were attitudes and behaviors on display in the community that I’d like to steer clear of going forward, and I’ll migrate to (or stay) wherever those attitudes are not. Time will tell, and I do hope there’s a strong fork that can improve on Nix and move beyond the past issues.
One of the "why lix?" bullet points on their about page:
Built for a community, not for a corporation.
Lix is built by a team of open-source volunteers – and exists to provide an alternative to the commercial interests that have long plagued both upstream CppNix and corporate-authored forks. We’re proud to stand by our open conflict of interest statements, and proud to listen to community voices on issues of sponsorship, direction, and moderation.
There's no cppnix, its just nix. That's some bs naming added on by people (not the creator). The repo and tool are still solidly called nix.
Of course there's corporate sponsorships, how else do you expect people to work on this stuff full time and eat. Food and Shelter aren't handed out for free last I checked.
“Nix” is a very overloaded term. It can refer to Nix-the-language, Nix-the-interpreter, Nix-the-command-line-tool etc. CppNix is specifically the code body developed in https://github.com/nixos/nix. It (among other things) implements Nix-the-language. E.g. https://tvix.dev/ also implements Nix-the-language, despite sharing no code with CppNix.
It’s just a way to distinguish a language from its implementation, similar to Python / CPython, or Rust / rustc, or C / gcc. Yes, officially they’re both named Nix, but that’s not helpful when you’re trying to discuss alternative implementations: “Nix implements Nix” just sounds like a tautology.
I think it's like CPython. The original implementation of the Python programming language was just called Python. Once there were multiple implementations it became useful to call it CPython sometimes. It depends on the context. Nix is both a language and an implementation. Calling the original implementation of Nix CppNix is a way to distinguish it from other implementations (like Tvix or Lix).
Edit: This is not a comment on the rest of the content of your post. I just thought it was kind of fair to call it CppNix!
If I remember correctly originally perl was a large part of nix's implementation. I thought they avoided haskell or another functional programming language in fear of recruitment issues and went with perl in part because it was known by the implementors.
Here is a github issue where they talk about some of the transition to cpp:
This makes sense if you read the headline: "declarative. reproducible. human-friendly."
This interpretation is confirmed in the "Conflict of Interest Statements" section of https://lix.systems/team/ which contains wording like "TMLLC declares that it has no financial stake in the future of Lix or Nix, no ties to the military-industrial-complex, and a strong commitment to avoiding such ties."
I like the concept of this section. I don't think I've seen something like this before. I think it might have been valuable in the cloud/containerization ecosystem where everyone is fishing for consulting hours by advertising the open-source components they use. Sometimes the lines get a little blurry, and it is quite frustrating.
I noticed that there is 1 out of 11 on the core team who is a "he/him". I don't know if non-he/hims are especially opposed to the war machine (e.g. like academics often are), or if are there other social factors that cause the cultural split?
> or if are there other social factors that cause the cultural split?
I'm not sure if the anduril "scandal" has gotten as much attention as the "jonringer vs reserved board seat for gender minority" discussion, I imagine this might be related to the latter.
This is what Jade Lovelace, a team member of Lix, wrote:
> there's a lot of work still to do on getting fascists out of the community and everyone is quite exhausted from the fight to get this passed. however. the fascists will get kicked out.
The recent upheavals have revealed that Nix either is not as welcoming as it bills itself to be, or has become less welcoming over time as the makeup of moderation/leadership has changed.
The thing that bothered me the most was the bad faith behavior from the moderation team, where any kind of disagreement is treated as abusive behavior and grounds for banning, even if the issue at hand boils down to:
1. We agree about X
2. We disagree about how to achieve X
On the one hand, I hesitate to recommend wasting time going down the rabbit hole. On the other hand, it’s a pretty interesting rabbit hole and one where the supposed “good guys” are behaving like tyrants, and then calling people who disagree with them fascists.
If nothing else it’s an interesting case study of community dynamics, and given the cultural factors that are driving these dynamics, seems likely to happen across other projects in the future.
What even does the word "fascist" mean anymore? I don't doubt there are real legitimate Nazis floating around, but like... I don't think being a military contractor is a sufficient bar to be called a fascist, not even close.
Is this really the type of person you want leading your community?
If this means what I think it means, I might switch to this from nix. I used to occasionally get errors that would be cached in such a way that on a rerun I wouldn’t get any info. The error itself would cache but not any of the details about the error. Was super annoying cause if I lost the error details for any reason I couldn’t see them again easily. I’d have to make a pointless change somewhere and trick it into rebuilding without the cache.