-
-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Policy for inclusion in the flake registry #25
Comments
I tried to alert about the need for a policy for the flake registry and tried recommending deferring this to a later RFC in NixOS/rfcs#49 (review), but apparently I did not succeed in being heard. IMHO this issue is important. |
The PR linked in the initial post, #24, was merged after this post was made, despite it being a 10 star repo and the tool being available in nixpkgs. I personally think it's distinctly odd that tools available in nixpkgs are being added as top-level entries here, the global registry probably shouldn't be a copy of https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/all-packages.nix I agree with @Zimmi48, if the global registry is going to exist an RFC is needed to determine the policy. And to be very clear, adding things to the global registry now and later saying "we can't remove it because it's already there" is not an acceptable solution. If there isn't going to be a policy before stabilizing flakes, I'd strongly suggest removing everything questionable (tools already in nixpkgs, the personal projects clearly just used for initial testing, etc) ASAP even if they need to be re-added back later. |
++ looking back, I think #24 probably shouldn't have been merged. Unlike search (which I think probably should index public flakes), registry does go onto everyone's system so its policy for inclusion should be tighter, and I am now of the opinion that nix-specific stuff (and nothing else) should be included (stuff like flake-utils, nixpkgs, nur, etc.). If people would like me to make a reverting PR I can, or alternatively anyone else can do it |
@Minion3665 I don't think that's necessary, if the owners feel it should be removed because of a policy update they can do it themselves. |
I'm personally against the idea of an auto-updating global registry, and I always overrided the global registry to a file since I'm in a country with poor connection latency to github.com or nixos.org. The global registry behaves like a list of "well known projects", opens the hole of supply chain attack and is worse than a default value of system registry So IMO, when we do have a "global" registry, nothing other than |
I mostly agree, although I feel having some projects other than Nixpkgs is nice I'd be far more convinced if the policy were "nothing not in nix-community or nixos" (or even just the nixos org). A policy like that would allow maintained and relevant projects like hydra or home-manager to stay while still having more oversight than "anybody's GitHub repo" (although admittedly particularly nix-community inclusion does not guarantee no supply chain attacks). I personally have the registry as a flake input to stop it updating automatically; I find it a little grating if nix downloads the registry without me wanting it to |
A default value of system registry |
Note that since NixOS/nix#5420 we can disable the global registry by setting |
#43 introduces an inclusion policy that is quite strict. |
Looks great 👍 I'm talking about:
There are also many entries that are quite specific to languages (like What do you think? |
I would suggest being stricter and:
I also agree that since flakes are still an experimental feature, it's not too late to clean the registry from flakes that do not meet the policy. |
This should be a good start to clean up the *mess* until NixOS#25 got some decission…
I think we should accept org/user namespaces instead of package namespaces.
Proof of Concept That makes a lot of sense for companies like flox, cachix, detsys, numtide, holpefully someday mysql, oracle, steam, etc
Related: DockerHub has good and bad examples:
Repo jacking: Most flake operations are in danger, not only with flake registry (unless someone with like me has access to it).
At least I could open a PR to update flakes-registry pointing to my new user (requiring another issue for name changing policy). |
This issue has been mentioned on NixOS Discourse. There might be relevant details there: https://discourse.nixos.org/t/call-for-volunteers-curating-official-projects/45382/6 |
What policy should we adopt for inclusion in the flake registry?
Should we allow any references that are getting submitted? Or do we have some criteria for inclusion?
Some facts:
This issue was triggered by #24. It seems to be just a normal tool, not specific to Nix.
Once we agree I will create a README and add the policy to it
The text was updated successfully, but these errors were encountered: