genode/doc/contributions.txt

64 lines
3.0 KiB
Plaintext

======================
Contributing to Genode
======================
If you like to improve Genode in any way, you're more than welcome to
contribute. A collection of ideas to enhance the current implementation can be
found at the [http:/about/challenges - Challenges] page.
Genode is publicly licensed under the terms of the GNU GPL with Genode Labs
maintaining the right to also distribute derivates to customers under
negotiated licenses. [http:/about/licenses - Read more] about Genode Labs'
dual-licensing business model. Contributions from outside Genode Labs can only
be incorporated into Genode's mainline development if each individual
contributor expliticly grants the permission to redistribute his contributions
under non-GPL licenses. This can be done in two ways:
# If you are planning a continuous involvement with the Genode development,
we recommend you to fill out and sign the
[http:gca.pdf - Genode Contributor's Agreement] (GCA). The GCA enables Genode
Labs to license Genode (including your contributions) under other licenses
than the GPL. The signed GCA covers all your future contributions.
# Alternatively, if you don't want to sign the GCA, you may submit
your contributions under the [http:mit_license - MIT License]. This
license is liberal and permits Genode Labs to use your contributions
in open and closed-source projects.
The major difference between both variants (and maybe an advantage of the GCA
for you) is: The GCA permits only Genode Labs to relicense your contributions
whereas the MIT license effectively puts your code into the public domain.
Development for Genode
######################
The Genode source code is available via file releases and a public source-code
repository (see the [http:/download - Download section] for details). Genode
Labs update the sources (incorporating community contributions) and announce
new Genode releases. Therefore, the source-code repository is not meant for
active development but for convenient source-code update and tracking of
changes between releases.
The advantage of this approach is that only code that meets Genode Labs's
quality measures (tests, stability) becomes part of an official Genode release.
The second (more legal) argument is that Genode Labs is obliged to ensure all
contributions fit our dual-licensing model.
Submission of your contribution
###############################
As soon as you developed a patch you regard valuable to share with the
community, submit it for incorporation. First, decide which of the above
contribution licensing variants fits your needs best. Then, accompany your
patch with a proper description of its changes and send it to the 'genode-main'
mailing list. Depending on your chosen licensing variant, you may have to state
that your source code is licensed under the MIT license.
Please, follow the developer discussion and possibly improve your patch. The
integration into Genode may take some time for review and testing at Genode
Labs.