diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..2c45dce --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,46 @@ +# Contributing + +## Adding a port + +Create a file in `modules//` with the name of the port. Add the file to the +`imports` declaration in `modules//default.nix`. All ports should have the +`catppuccin.enable` and `catppuccin.flavour` options, and optionally the +`catppuccin.accent` option. `catppuccin.flavour` and `catppuccin.accent` should +default to `config.catppuccin.flavour` and `config.catppuccin.accent`, respectively. + +## Commit messages + +This repository uses [Conventional Commits](https://conventionalcommits.org). +All commits should include a body that briefly describes the motivation and content +of the commit. + +### Commit types + +- `fix`: A bug fix that doesn't modify the public API +- `feat`: A code change that modifies the public API +- `refactor`: A code change that doesn't change behavior +- `style`: A style fix or change +- `docs`: Any change to documentation +- `ci`: Any change to CI files +- `revert`: A revert commit. The message should describe the reasoning and the + commit should include the `Refs:` header with the short hashes of the commits + being reverted. +- `chore`: catch-all type + +### Commit scopes + +For the commit scope, put the name of the port the commit affects. If the commit +does not affect a specific port, omit the scope. + +### Breaking changes + +All breaking changes should be documented in the commit footer in the format +described by Conventional Commits. Use the `!` syntax in order to distinguish +breaking commits in the log, but include the footer to provide a better description +for the changelog generator. + +``` +feat(bar)!: foo the bars + +BREAKING CHANGE: bars are now foo'ed +```