Contributing guide

May 26, 2023 ยท View on GitHub

Contributions are more than welcome!

Please don't forget to add your changes to the "Unreleased" section of the changelog (if applicable).

Commit messages

This project uses Conventional Commits.

Development

I use nix for development and testing.

Formatting is done with stylua.

To enter a development shell:

nix-shell

or (with flakes enabled)

nix develop

To apply formatting, while in a devShell, run

pre-commit run --all

If you use direnv, just run direnv allow and you will be dropped in this devShell.

Tests

To run tests locally

nix-build -A ci

or (with flakes enabled)

nix build .#checks.<your-system>.ci --print-build-logs

For formatting:

nix-build -A formatting

or (with flakes enabled)

nix build .#checks.<your-system>.formatting --print-build-logs

If you have flakes enabled and just want to run all checks that are available, run:

nix flake check --print-build-logs