]> git.proxmox.com Git - mirror_lxc.git/blame - CONTRIBUTING
spelling: timeout
[mirror_lxc.git] / CONTRIBUTING
CommitLineData
fd0bef1e
ДП
1Contributing to this project
2----------------------------
752c0602 3
4This project accepts contributions. In order to contribute, you should
5pay attention to a few things:
6
7 1 - your code must follow the coding style rules
154f6474 8 2 - the format of the submission must be GitHub pull requests
752c0602 9 3 - your work must be signed
10
11
12Coding Style:
13-------------
14
54df5d72
TH
15The LXC project generally follows the Linux kernel coding style. However there
16are a few differences, these are outlined it CODING_STLYE.md
752c0602 17
82778d41
TH
18The Linux kernel coding style guide can be found within the kernel tree:
19
20 Documentation/process/coding-style.rst
752c0602 21
e81c7f2c 22It can be accessed online too:
752c0602 23
b6fbcbbb 24https://www.kernel.org/doc/html/latest/process/coding-style.html
752c0602 25
26Submitting Modifications:
27-------------------------
28
154f6474 29The contributions must be GitHub pull requests.
188e0ab6
SG
30
31Licensing for new files:
32------------------------
33
34LXC is made of files shipped under a few different licenses.
35
36Anything that ends up being part of the LXC library needs to be released
37under LGPLv2.1+ or a license compatible with it (though the latter will
38only be accepted for cases where the code originated elsewhere and was
39imported into LXC).
40
41Language bindings for the libraries need to be released under LGPLv2.1+.
42
9efa12ed 43Anything else (non-libraries) needs to be Free Software and needs to be
188e0ab6
SG
44allowed to link with LGPLv2.1+ code (if needed). LXC upstream prefers
45LGPLv2.1+ or GPLv2 for those.
46
188e0ab6
SG
47When introducing a new file into the project, please make sure it has a
48copyright header making clear under which license it's being released
49and if it doesn't match the criteria described above, please explain
50your decision on the lxc-devel mailing-list when submitting your patch.
51
752c0602 52Developer Certificate of Origin:
53--------------------------------
54
55To improve tracking of contributions to this project we will use a
4a308d66 56process modeled on the modified DCO 1.1 and use a "sign-off" procedure.
752c0602 57
58The sign-off is a simple line at the end of the explanation for the
59patch, which certifies that you wrote it or otherwise have the right
60to pass it on as an open-source patch. The rules are pretty simple:
61if you can certify the below:
62
63By making a contribution to this project, I certify that:
64
65(a) The contribution was created in whole or in part by me and I have
66 the right to submit it under the open source license indicated in
67 the file; or
68
69(b) The contribution is based upon previous work that, to the best of
70 my knowledge, is covered under an appropriate open source License
71 and I have the right under that license to submit that work with
72 modifications, whether created in whole or in part by me, under
73 the same open source license (unless I am permitted to submit
74 under a different license), as indicated in the file; or
75
76(c) The contribution was provided directly to me by some other person
77 who certified (a), (b) or (c) and I have not modified it.
78
79(d) The contribution is made free of any other party's intellectual
80 property claims or rights.
81
82(e) I understand and agree that this project and the contribution are
83 public and that a record of the contribution (including all
84 personal information I submit with it, including my sign-off) is
85 maintained indefinitely and may be redistributed consistent with
86 this project or the open source license(s) involved.
87
88
89then you just add a line saying
90
836676ca 91 Signed-off-by: Random J Developer <random@developer.org>
752c0602 92
99777255
NC
93You can do it by using option -s or --signoff when you commit
94
95 git commit --signoff ...
96
836676ca 97using your real name (sorry, no pseudonyms or anonymous contributions.)
b706b2ee
CB
98
99In addition we support the following DCOs which maintainers can use to indicate
100that a patch is acceptable:
101
102 Acked-by: Random J Developer <random@developer.org>
103 Reviewed-by: Random J Developer <random@developer.org>
104
105If you are contributing as a group who is implementing a feature together such
106that it cannot be reasonably attributed to a single developer please use:
107
108 Co-developed-by: Random J Developer 1 <random_1@developer.org>
109 Co-developed-by: Random J Developer 2 <random_1@developer.org>