zaphyra's git: haumea

fork of https://github.com/nix-community/haumea

1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
34 
35 
# Contributing to Haumea

Unless explicitly stated, all contributions are licensed under
[MPL-2.0](http://mozilla.org/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.lib` should be documented.
- Add [tests](https://github.com/nix-community/haumea/tree/main/tests) when necessary.
  Test your changes with `nix flake check`. Make sure new files are added to git.

## Documentation

Documentation sits in the [docs](https://github.com/nix-community/haumea/tree/main/docs)
directory. You can get started with `nix develop ./docs`, which will start up
[mdbook](https://github.com/rust-lang/mdbook) and serve the documentation on localhost.

## Scope

Haumea only depends on [nixpkgs.lib](https://github.com/nix-community/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](https://github.com/nix-community/nixpkgs-fmt).
- `with` should be avoided unless absolutely necessary,
  `let inherit` is preferred at almost all times.
- `rec` attribute sets should be avoided at most times, use `self` or `let-in` instead.

[nixpkgs]: https://github.com/nixos/nixpkgs