28
Nix project: ban? What ban?
(discourse.nixos.org)
this is FreeAssembly, a non-toxic design, programming, and art collective. post your share-alike (CC SA, GPL, BSD, or similar) projects here! collaboration is welcome, and mutual education is too.
in brief, this community is the awful.systems answer to Hacker News. read this article for a solid summary of why having a less toxic collaborative community is important from a technical standpoint in addition to a social one.
some posting guidelines apply in addition to the typical awful.systems stuff:
(logo credit, with modifications by @dgerard@awful.systems)
samueledr has left the project in response and their parting message pretty much sums it up
the most important thing a moderator on this hostile network has to take responsibility for, above and beyond all technical concerns, is ensuring that fascists and their absolute bullshit do not have carriage on any system they control. I’m fucking done pretending this isn’t a basic expectation. anyone who has the ability to remove fascists from their community and doesn’t is responsible for what will happen.
I have about a fuckload of Nix code I need to release. awful.systems still runs on NixOS after all, and I’ve gotten very good at writing Nix — and far too reliant on it. I’ve been neglecting finishing those projects and a fair few infrastructural tasks for our instance because my gut and my heart won’t let me contribute to an ecosystem that has repeatedly gone out of its way to empower fascists and abusers, to the detriment of a frankly ridiculous number of extremely talented contributors who got pushed out of the project — which is what happens to every community, every time the folks trusted with the ability to moderate decide to give the fascists a pass.
I’m still chewing it over, but it feels like samueledr’s got about the right idea. I’ll release my code here for our (very vocally anti-fascist) purposes, but I’ll take steps to make sure it’s poisoned against being integrated into the current form of the Nix ecosystem. if Aux, Lix, or any other anti-fascist Nix offshoot finally wants to step up and start an ecosystem worth contributing to, my projects will be available to them.
I've been trying to background-ponder what measures could work for this sort of thing. classical hindrance methods such as code obfuscation are counterproductive to debugging and dev work, and strongly tying code to its runtime has other problematic implications. licensing alone isn't sufficient because you need the ability to actually do something from those terms (whether lawyers or ...), and doubly so because these fucking awful human beings do not actually care and will tread over any license terms as long as they benefit, and will use power to defend their actions.
oldmanshakesfistatcloud.bmp for trusted computing still being so damn nascent -_-
wish I had more fucking spoons to research this shit properly :|
You don't have to release anything. Most of my flakes are on private storage in my homelab, including my homelab configuration, and I don't feel any obligation to contribute anything upstream right now.
Don't let them take the Nix language from us. Focus on what's important: nixpkgs can be forked trivially and everything will continue to work, because that's the point of Nix. They can't disempower us other than by insisting that we don't have voices on their committees.
that is true! there’s a ton of Nix stuff I’m keeping entirely personal now too. my projects fall into roughly three categories:
[*] guix would work fine (and for the sub-distro it’d have an advantage in that everything would speak Lisp), but given the sheer fucking number of GNU shitheads I’ve seen supporting Jon, switching from Nix to Guix feels a lot like moving out of your abusive parents’ house so you can rent out your abusive parents’ guest house
and the fridge in the guest house has a lock on the freezer so you can’t have ice cream, but don’t worry, nobody will notice (for now) if you remove the lock with some bolt cutters
I’m willing to be wrong about guix — I really want a reasonable out from the current Nix ecosystem — but this doesn’t feel like a healthy choice
Agreed that releasing stuff isn’t necessary, especially stuff propping up the ecosystem.
Unfortunately, I think the rest of your statements are exactly inverted: the nixpkgs repo is pretty difficult to fork (moves fast, needs expensive CI/caches to properly operate), and while we may still have the nix expression language (and hey, lix is a good implementation of it!), I’m getting more and more convinced that it is not such a blessing.
The phd thesis though, that one is pretty good (currently reading it for realsies); lots of good ideas in it, regardless one’s thoughts about the expression language (:
beyond anything technical, the question that’s been burning up my hope is:
why in fuck was this such an easy win for the techfash shitheads operating in the open?
seriously. these fuckers employed the most obvious tactics imaginable to damage the Nix community beyond repair, and it worked. it wasn’t even hard for them to come fuck up the only enjoyable tool I use.
and hardly anybody even managed to tell them no in a way that fucking mattered. the Nix governance changes were an obvious ploy that everybody fucking bought into! and I thought I was being fucking unfair for thinking this’d be the exact outcome!
and somehow, after all this bullshit happening in the open, there’s no viable fork? Aux got right to the edge of it — one of my systems ran auxpkgs without much trouble — then they let a bunch of bad faith assholes steer the project away from that, and now I don’t know what Aux is, but it’s not focused enough for me to contribute to.
the only ones who successfully said no were Lix, so the Nix language will survive! and as you pointed out, as it is right now that’s not great. it’s a lot like elisp — it’s janky as fuck but there’s a couple things it does uniquely well. unfortunately, the folks in control of nixpkgs control the Nix standard library, and they’d prefer the language remains obscure and janky. in short, these fucking jackasses want Nix to become as hard to use as Urbit, because it’s very easy to turn a priesthood of experts with obscure knowledge into a right-wing think tank. I’m sure it works even better if, unlike with Urbit, the underlying technology actually fucking works.
For this reason, Tvix (a modular Nix implementation) cites compatibility with nixpkgs as one of their goals:
https://tvl.fyi/blog/rewriting-nix
Yup, there are a few efforts out there like that, I would group aux and lix in with them, as ecosystem-compatible parts.
My feeling these days is that the ecosystem is kinda screwy on a fundamental level, and I’m willing to blame the unhealthy focus on “purity” (both the word and the concept) for a good part of that. The language you use to define packages and systems doesn’t need to be lazily evaluated and purely functional; nothing needs to be, that is a lesson freely available to be learned coming out of the early 2000s.
Anyway, here I am slowly reading through the doctoral thesis, picking out the (several) grains of corn that make up the really good and solid ideas that make it a useful system; maybe a thing can be made that adds a bit of pragmatism… and then a lot of effort can be poured into that, unpragmatically.