Thanks for your interest in contributing to AerynOS.
- aerynos.dev - Documentation about the ideas behind the OS, the packaging process, and other core concepts.
All discussion takes place in the AerynOS Zulip organization.
- General Zulip channel
- Development Zulip channel
- Documentation Zulip channel
- Webdev Zulip channel
- Packaging Zulip channel
Please note that while the Zulip channels are publicly viewable, the AerynOS team has implemented a role-based system to determine who can take part in certain channels.
Everyone who has joined the Zulip server will be able to engage in our "General - Public" channels. Those who have demonstrated their interest in contributing to the project will subsequently be granted access to the "Trusted Contributor" role, which will allow them to take part in the "Development", " Documentation", "Web Development", and "Packaging" channels.
Contributions are not limited to code. We welcome help with documentation, translations, testing, user feedback, design, and community support. If you’re unsure where to start, ask in the General Zulip channel.
If you find any bugs, inconsistencies or other problems, feel free to submit a GitHub issue on the appropriate repository. If you’re unsure which repository is appropriate, ask in the General Zulip channel or open the issue where it seems most relevant — we can move it if needed.
If you run into problems getting started, let us know — improving the contributor experience is important to us. Please search for existing issues before opening a new one.
Ready to contribute code? The following guidelines should help you get started.
Follow the existing coding style and patterns used in the repository.
We use rustfmt to ensure consistent code formatting and clippy to catch common mistakes not caught by the compiler as well as enforcing a few custom code style choices.
Before committing your changes, run cargo fmt to format the code
(if your editor / IDE isn't set up to run it automatically),
and cargo clippy --workspace to run lints.
Sometimes, you may see lints that are unrelated to the code you modified. You can ignore those, or try to fix them as a separate contribution.
Once you're ready to submit your code, create a pull request, and one of our maintainers will review it. For additional guidance on how to write a good commit message, please refer to our documentation site.
Reviews may take some time depending on maintainer availability. Once your PR has passed review, a maintainer will merge it and you're done! 🎉
Contributions must not include content generated by large language models or other probabilistic tools like ChatGPT, Claude, and Copilot.
This policy exists due to
- ethical concerns about the data gathering for training these models
- the disproportionate use of electricity and water of building / running them
- the potential negative influence of LLM-generated content on quality
- potential copyright violations
This ban of LLM-generated content applies to all parts of the projects, including, but not limited to, code, documentation, issues, and artworks. An exception applies for purely translating texts for issues and comments to English. We may make more exceptions for other accessibility-related uses.
We heavily discourage the use of LLM chat bots as a replacement for reading AerynOS's documentation.
Support requests referencing misleading or false LLM output relating to the project may be ignored, since it is a waste of time for us to "debug" where things went wrong based on this output before human support was sought. Once you're ready to submit your code, create a pull request, and one of our maintainers will review it.