We are excited to announce Omnix — a tool that supplements the Nix CLI to improve the developer experience.
At Juspay, we use Omnix for:
Running CI with one command: The om ci sub-command builds all your flake outputs. You can also run CI on a remote machine using om ci run --on user@<remote-ip>. Other niceties include:
Configuration: Define configs in Nix as a flake output (om), or use an om.yaml file in the project root (see Configuration - Omnix).
Health checks for troubleshooting: When developers run into Nix-related issues, they usually turn to the Nix team at Juspay. Often, they can’t clearly explain the problem, and someone from the team has to jump on a call and help manually. To avoid this, we ask them to run om health and follow the suggestions. If the tool can’t help solve the issue, we step in. This lets the Nix team focus on innovation instead of routine support.
This is a command-line tool. Why is it licensed AGPL-3.0? That doesn’t seem like an appropriate license for a command-line tool. This is not the first time I’ve seen a Nix-related tool use the AGPL-3.0 license (in particular, nix-output-monitor does, and I have no idea why) and I don’t understand where this is coming from.
Besides the AGPL license being inappropriate for CLI tools (it’s meant for software that runs over a network), the problem with this license is a lot of potential users can’t adopt the tool because their employers prohibit the installation of AGPL software on work laptops even for personal usage.
If you couldn’t use GPL stuff, you couldn’t use any kind of Linux distro. Even nixpkgs for darwin would be completely out of the question. Some BSD maybe.
I am not making the rule, and am not suffering from it, just telling how corpos think. And on a previous employer we could use GPL’d tools for whatever we want, as long as nothing in a project even mentioned them…
The big corpo stance against GPL is the main reason to simply do not use GPL where I do have a choice. And to be honest, as nix itself is LGPL, we are locked out already.
I do not mind that for using nix.But this choice influences the licenses in the ecosystem as a whole.
Google in particular has a policy against AGPL that gives some reasons against it. No doubt many companies have imitated them, either by being sincerely convinced or just aping the big G.
One can reasonably doubt Google’s full honesty here, since the existence of GCP means they certainly have a very strong corporate interest (almost as strong as Amazon!) in keeping open-source projects from using licenses like AGPL that make it tough for them to monetize their tweaks to cloud-hosted OSS.
How hard one wants to strategically push back against this presumed cloud agenda is a difficult decision, but there are reasons for it, @lilyball, maybe even for software that is not a server, especially if it would be useful for hyperscalers to offer. And I think most Nix tools could plausibly fall in that last category.
No, a lot of companies dislike the GPL but still allow GPL-licensed tools to be installed for personal use (and have various policies governing corporate use). AGPL is special, it gets outright banned.
This idea that companies disliking AGPL is a point in favor of it is ridiculous. Companies aren’t hurt by picking a license that means individual users are banned from installing the tool for personal use. The GPL family is supposed to be all about freedom, and yet the AGPL means I’m not free to even use the tool.
If this is a reply to me, I’m not interested in hurting companies, but strategically responding to anti-freedom strategies (that happen to be designed for corporate interests at the expense of people) has been a part of free/libre activism from the very beginning. And the entire GPL family is specifically designed with more restrictions than the BSD licenses along the same strategic lines: trade away some potential adoption in exchange for building a catalog of software that is much harder to exploit.
So yes, for forty years the GPL licenses have been designed with the tradeoff that e.g. some “individual users are banned from installing the tool for personal use.” The AGPL is special, but it’s not that special. It’s just the farthest along the spectrum. So of course it will get the most opposition.
I currently work at Google, and I worked in Google open source almost 15 years ago when Cloud was brand new and lost money and when Drive was just a rumor. The AGPL policy predated my working there, and I personally know one of the policy’s authors. I am confident that the real reason for the policy is the one stated: extreme care about compliance. You could say that the policy is over-aggressive—I might agree with you—but the reasoning is genuine.
I’m just one guy, not a decision maker or anything. Take this for whatever it’s worth.