1 Commits

Author SHA1 Message Date
35f774b541 Docs: Added README and contributing guide
Signed-off-by: Max Logaev <maxlogaev@proton.me>
2025-03-10 23:32:34 +03:00
2 changed files with 96 additions and 0 deletions

77
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,77 @@
# Contributing guide
## 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.
- `All` - global 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

19
README.md Normal file
View File

@@ -0,0 +1,19 @@
# 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)
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](./kernel/trunk/COPYING.TXT) file for details