Hi the great Nix community,
As a Nix user for almost one year, I think it is now a good time for me to start contributing back. I have been adding custom packages to my personal overlay and the process has been smooth and efficient (one of the best features of Nix I would say). Every now and then there can be packages that I feel it would be great to have in nixpkgs.
To find out how to do that, I find the quick start in the manual, and I understand that I can fork nixpkgs, create commits and make PRs. However there are still some question unanswered before I can confidently try to contribute:
- How to thoroughly test the package before I submit the PR? I can probably make sure it works by adding the package to my personal overlay. However, this only tests it in a specific environment (my NixOS), on a specific box (my workstation).
- Is it considered a good practice to run NixOS on my fork of nixpkgs instead of the official nixpkgs channel? In that case, if I added the commit to my fork of nixpkgs first and try the package, it better resembles what the other users will see if the commit gets merged.
- Is there any other rules or steps to take before making the PR, in order to save the time of the reviewer? Where can I find the set of rules?
Sorry if my hunt for such documentation is not exhaustive. And thanks in advance for the help!