NixOS vs Parabolas/GNU FSDG "Freeness" Criteria

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

1 Like

That is incorrect. 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 :frowning:

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.