Contributing to Haumea
Unless explicitly stated, all contributions are licensed under MPL-2.0, the license used by haumea.
Making Changes to the API
This doesn't apply to bug fixes.
- Discuss before opening a pull request, so your work doesn't go to waste. Anything from GitHub issues to Matrix discussions is fine.
- Update documentation accordingly. Everything in
haumea.libshould be documented. - Add tests when necessary.
Test your changes with
nix flake check. Make sure new files are added to git.
Documentation
Documentation sits in the docs
directory. You can get started with nix develop ./docs, which will start up
mdbook and serve the documentation on localhost.
Scope
Haumea only depends on nixpkgs.lib. Features that depend on the rest of nixpkgs should not be added. However, changes that are specific to, but don't depend on nixpkgs are allowed.
Style
- Format all Nix files with nixpkgs-fmt.
withshould be avoided unless absolutely necessary,let inheritis preferred at almost all times.recattribute sets should be avoided at most times, useselforlet-ininstead.