diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 000000000..4651b45a1 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,41 @@ +# Code of Conduct + +__Code of Conduct__ of __KolibriOS__ project + +## Purpose + +The primary goal of our community is to be inclusive of a large number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, ability, ethnicity, socioeconomic status, and religion (or lack thereof) + +This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior + +We invite all those who participate in our community to help us create safe and positive experience for everyone + +## Expected Behavior + +The following behaviors are expected and requested of all community members: + +- Exercise consideration and respect in your speech and actions +- Attempt collaboration before conflict +- Refrain from demeaning or discriminatory behavior and speech +- Be mindful of your surroundings and of your fellow participants + +Also alert community leaders if you notice a dangerous situation, someone in distress, or violations of this *Code of Conduct*, even if they seem inconsequential + +## Unacceptable Behavior + +The following behaviors are considered harassment and are unacceptable within our community: + +- Threats of violence or violent language directed against another person +- Posting or displaying sexually explicit material +- Personal insults +- Deliberate intimidation, stalking or following +- Advocating for, or encouraging, any of the above behaviors +- Sustained disruption of community events, including talks and presentations + +## Reporting Guidelines + +If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community organizer as soon as possible + +## Scope + +We expect all community participants (contributors, sponsors and other guests) to abide by this *Code of Conduct* in all community venues as well as in all one-on-one communications pertaining to community business diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..cb8c1a09d --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,99 @@ +# Contributing guide + +The __KolibriOS__ project __Contributing__ guide + +## Overview + +The process of contributing to the project is described in detail in this document. + +## Code of Conduct + +The first thing to do is to read and follow our [Code of Conduct](./CODE_OF_CONDUCT.md). + +## Type of contributing + +There are two main types of contributions: submitting issues about problems and submitting pull requests. Each of these types of contributions is described in detail below. + +## Issues + +You can help us by submitting issues to repository. At the moment there are 2 main ways of submitting an issue in the project: _bug reports_ and _feature requests_. All existing forms are provided with brief explanations + +- Reports are suitable if you find a __bug__ in some part of the project and want to create a report; +- Also there is a possibility submit a __feature request__ if it seems to you that the project lacks any feature. + +## Pull requests + +You can also help us by submitting pull requests. The process of submitting a pull request consists of several steps: + +- Find what you want to implement or improve; +- Make a fork (not relevant for owners); +- Create a branch with a name that matches your changes; +- Make and test the changes; +- Create commits according to the [accepted style](##commit-style); +- Create and submit a pull request; +- Wait for CI/CD pipelines and code review to pass. + +When a pull request is submitted, at least two project participants must conduct a code review, after which the changes are corrected (if it's necessary) and merged into the project. + +## Commit style + +### Naming + +- Pattern + + Regular commit message should consist of several parts and be built according to the following template: + + ```test + Category: Commit message body + + Long description if necessary + ``` + + - Commit message body and description should briefly reflect the meaning of the commit changes; + - Commit message body should be written starting with a capital letter; + - Description should be separated from the body by one empty line. + +- Length + + The maximum number of characters in a commit header is __72__ (standard for __Git__). Additionally, __72__ is the maximum length of a line in a commit body. + +- Categories + + List of existing categories accepted in the project: + + - `Krn` - kernel + - `Drv` - drivers + - `Libs` - libraries + - `Skins` - skins + - `Build` - build system + - `CI/CD` - CI/CD + - `Docs` - documentation + - `Data` - images, configs, resources, etc. + + List of categories for exceptional situations: + + - `All` - global changes + - `Other` - unclassifiable changes + + If changes are made to a specific component, the name of the component separated by `/` character needs to be specified. For example: + + ```text + Apps/shell + Libs/libimg + ``` + +### Merge commits + +Merge commits are __prohibited__ in the project + +### Unwanted commits + +Commit messages like `Refactoring`/`Update files` are __unwanted__ in the project + +### Signing + +This is not a requirement, but it is strongly recommended to sign commits. This can be done by the following command: + +```sh +git commit -s +``` diff --git a/README.md b/README.md new file mode 100644 index 000000000..8ac8eab6c --- /dev/null +++ b/README.md @@ -0,0 +1,22 @@ +# KolibriOS + +[![License](https://img.shields.io/badge/License-GPL%202.0-green)](./COPYING.TXT) +[![Build system](https://git.kolibrios.org/KolibriOS/kolibrios/actions/workflows/build.yaml/badge.svg)](https://git.kolibrios.org/KolibriOS/kolibrios/actions/workflows/build.yaml) + +KolibriOS is a hobby operating system for x86-compatible computers, its kernel is written entirely in [Fasm](https://flatassembler.net/) assembly language. Based on [MenuetOS](https://www.menuetos.net/), it uses its own standards and is not fully POSIX or UNIX compliant + +## Contributing + +Detailed instructions for the contribution process can be found in the [contributing guide](./CONTRIBUTING.md) + +Also there is an accepted [code of conduct](./CODE_OF_CONDUCT.md) in the project + +Common list of project tasks is located on [this page](https://git.kolibrios.org/KolibriOS/kolibrios/issues). + +## Special thanks + +The KolibriOS team expresses special thanks to the author of the 32-bit __MenuetOS__, [Ville Turjanmaa](https://www.menuetos.net/contact.htm). We also want to note that all __MenuetOS__ copyrights have been preserved + +## License + +Contents of this repository are licensed under the terms of __GNU GPL 2.0__ unless otherwise specified. See [this](COPYING.TXT) file for details