How do nixpkgs “free” criteria compare to the definition of Distros like Parabola or the GNU Free System Distribution Guidelines in general?
free means it can be redistributed
If you want the 100% libre equivalent of NixOS, there is https://guix.gnu.org/
That is incorrect.
licenses.free
means that it is FOSS according to the OSI. Unfree OSS that is redistributable would be licenses.unfreeRedistributable
.
where did you find this information? I just found some vague recommendation in a README in nixpkgs repo
That’s how it’s being lived. See the discussion around the SSPL which is the AGPL with an additional clause requiring you to also publish if you offer the software as a service. And yet the OSI considers it unfree due to dubious reasons that don’t actually conflict with their OS definition. It’s marked unfree in Nixpkgs.
You can check lib/licenses.nix
: free = true
means it respects the 4 essential freedoms:
unfreeRedistributable = {
fullName = "Unfree redistributable";
free = false;
redistributable = true;
};
unfreeRedistributableFirmware = {
fullName = "Unfree redistributable firmware";
redistributable = true;
# Note: we currently consider these "free" for inclusion in the
# channel and NixOS images.
};
So merely redistributable binaries are not marked as free. The only exception is firmware, essentially linux-firmware
is the only unfree package you have with allowUnfree = false
in your configuration.