I wanted to remind people about this drama from the creator of HA, Frenck toward Nix maintainers packaging Home-Assistant in nixpkgs.
If he behaves in this immature, dictatorial way, it is not a stretch to think that he will eventually close his source code and/or cash in on the popularity of his open source software like the Pi Foundation and OpenAI did to differing degrees.
TLDR; Frenck is convinced that he has the right to unilaterally mandate how people package his free, open source software and, in my opinion, will most likely behave with similar lack of integrity/lack of transparency with regards to profiteering off of his work eventually. We should fork the project ASAP to protect it from the power-hungry Luddite in charge (that reminds me of Spez).
Maybe try to understand his point first?
From what I’ve gathered, Nix will create an immutable state of HA, but HA requires for additional packages to be downloaded - which NixOS doesn’t support/allow.
So users will end up with a broken HA install.
And guess where they will file bug reports about this? (Hint: It won’t be Nix…)
That immutable state considers the lock files of ALL the dependencies listed and needed to build the software. You don’t seem to understand the technology enough to weigh in.
It downloads them then compares them with the expected hashes. If they don’t match, it literally won’t build.
From what I gather here you have a particular flavor of a distribution that does not work with a foss piece of software. This is not uncommon.
Developers have finite time and energy to put into the development of their platform and likely spend that time supporting their existing user base. Just because you took the time to learn esperanto and think it is a superior language does not mean everyone else must cater to your whims.
Based on your statements you seem to “understand” nix… Instead of demanding they cater to your needs: Perhaps you should undertake the burden of forking, modifying the code, and supporting the vast ecosystem of addons then. Surely it would be a trivial matter.
That’s the thing that NONE of you get. We literally don’t need anything nor are we asking anything of Frenck. We packaged Home-Assistant and there it sits in nixpkgs without ANY involvement from Frenck.
and that’s what YOU don’t understand:
you take his software and put it on your platform, without supporting it propperly…
don’t package it, if you are not willing to support it. simple as that…
Ah. So there are even more people whose fault is that they do not understand…
;-)
I probably don’t know enough about the project, but how can it know what requirements plugins installed at a later time have?
Python generates hashed lock files of every dependency it builds. It simply queries that and matches that against its own builds. If they’re not using lock files and such, there are MUCH bigger problems in that project. ;)
Plugin systems don’t rely on lock files, they’re not part of the build at all.
Wow. I stand corrected. That’s actually scary. Has anyone mentioned a solution to this glaring issue? It’s fairly trivial to do that by the way. All that needs to happen is to hash the output of each plugin and the version numbers and compatibility issues would be easier to understand and reproducible.
I’m guessing that those plugins have their own nix derivations that are handled in a more reliable manner. No wonder the dude has extra technical debt popping up! He hasn’t even thought to atomically declare his dependencies.
What? No no no no… You don’t understand. NixOS is hot shit, how can they be wrong in any way…
This ^^ I thought this whole controversy was because they don’t support the HA nix package BUT when people use it and their HA instance breaks…they go to homeassistant support… Doesn’t sound like a dictator but just saying they don’t support that nix package etc. ?
I understood the point well. The author (and perhaps you) don’t seem to. The technical issues he outlined show a lack of understanding about how nix works with Pypi dependencies. Nix builds EVERYTHING and uses the hashes and lock files from the package. It builds the EXACT versions of PIP packages that the original package used. So any dependencies that the author created point to the hashes that nixpkgs expects. There should be zero difference between the two since they are hashed using inputs. In conclusion, Frenck was being a dick because he didn’t understand Nix and hashed atomic build systems.
If someone from nixpkgs goes to him about something breaking, it is literally because his code broke something. The only possible failure on the nixpkgs part would be not bumping the pkg version of a dependency quick enough…but this is a non-issue since home-assistant pkg builds all of those in its derivation FROM HA’s lock files.
Sorry but it makes no sense to me.
Please tell me: why in the world should a developer (of free software) invest any of his time into trying to understand what some packager/distributor does with his product?
Well, mostly for comms. You don’t want a flood of people getting pissed off at your project(s) for being poorly distributed and/or broken.
But it is a flood of people using a project in a way that it never was intended to be used in the first place.
Yes, HA is “weird” because it is an open source project that actually has significant amounts of funding (to which I contribute). But this isn’t a case of the authors and org deciding to support a new distribution platform. This is a case of a subset of community members deciding it should support that distribution platform and insisting that the project spin up knowledge and support for it.
That last part is wrong. Nixpkgs asks NOTHING of the maintainers of the original packages. We pride ourselves on being able to RELIABLY build any software out there using only what is available to build the package normally. We just add steps to make that REPRODUCIBLE because we think that is important. If someone went to Frenck about the issues, they certainly weren’t directed there by nixpkgs people.
No, no, no. You just said above that the problem is because the developer did not understand something that nixos does or wants or whatever.
Yeah. He came to the nix people bitching because he didn’t understand their technology and chose to be mean rather than direct the questions to nixpkgs. He tried to obfuscate his code to punish nix people which goes directly against the open source license.
Maybe don’t come to them bitching if you don’t understand what you’re talking about?
Now I understand that you are personally involved and emotionally invested.
It would have suited you (and your case) well to make this transparent before calling somebody a dick etc.
Sure Jan.
Look. I don’t know much about your project or what it’s goals or ideology are. What I do know is that your behavior is tainting it and making me think your entire community are assists who call people terrorists for not supporting you.
Think about that
You should probably write a version of that to Frenck and yourself too. I’m just here pointing out shitty anti-open source behavior. Not sure how they makes me culpable…. But go off qween.
His code breaking something, or him not understanding a system he’s not involved with doesn’t mean he is obligated to listen to complaints or fix it for free.
No one said he was. No one said that. They literally said, “direct any issues to the nixpkgs maintainer”.
Then what is the point of all this flailing? If he’s not supposed to fix it or listen. Then fork it and shut the fuck up? This whole post is just to throw shade at someone it seems.
It obviously is.
Frenck actually deserves it.
Get a grip. You are too emotionally invested. You can fork the project right now and ask nothing of the original dev. So maybe follow your own philosophy and leave HA alone. It sounds like you want this to work on NixOS but dont want to maintain a fork.
What compounded the issue was that one of the nixpkgs maintainers had been closing all relevant issues, which redirects the discussion to HA forums. No matter how many times it is repeated “we at NixOS have no intention on putting extra work on the developer”, the actions speak differently.
One or more maintainers later apologized, judging downthread it seems this was mostly resolved amicably between the people involved. No reason to get upset about it again three years later.
I’m not upset. I just think these kinds of anti-open source actions should be well-known by such a large, popular community centered around a project that could potentially have their source code closed and monetized at the drop of a hat.