When filing a new merge request it's often hard to know who to ask for a review; using the Git log doesn't always help — the person that touched a file last may just be fixing the build or a compiler warning. The `CODE-OWNERS` file format is something that GitHub uses in order to pre-fill the list of reviewers: https://help.github.com/articles/about-codeowners/ Ideally, in the future, we'll be able to use this file with a bot like homu to automatically go through newly filed merge requests and automatically ask the relevant people for reviews, instead of doing this manually.
1.9 KiB
If you want to hack on the GTK+ project, you'll need to have the development tools appropriate for your operating system, including:
- Python 3.x
- Meson
- Ninja
- Gettext (19.7 or newer)
- a C99 compatible compiler
Up-to-date instructions about developing GNOME applications and libraries can be found here:
Information about using GitLab with GNOME can be found here:
In order to get Git GTK+ installed on your system, you need to have the required versions of all the GTK+ dependencies; typically, this means a recent version of GLib, Cairo, Pango, and ATK, as well as the platform specific dependencies for the windowing system you are using (Wayland, X11, Windows, or macOS).
You should start by forking the GTK repository from the GitLab web UI, and cloning from your fork:
$ git clone https://gitlab.gnome.org/yourusername/gtk.git
$ cd gtk
Note: if you plan to push changes to back to the main repository and have a GNOME account, you can skip the fork, and use the following instead:
$ git clone git@gitlab.gnome.org:GNOME/gtk.git
$ cd gtk
To compile the Git version of GTK+ on your system, you will need to configure your build using Meson:
$ meson _builddir .
$ cd _builddir
$ ninja
Note: For information about submitting patches and pushing changes
to Git, see the README.md
and README.commits
files. In particular,
don't, under any circumstances, push anything to Git before reading and
understanding README.commmits
.
Typically, you should work on your own branch:
$ git checkout -b your-branch
Once you've finished working on the bug fix or feature, push the branch to the Git repository and open a new merge request, to let the GTK maintainers review your contribution. The CODE-OWNERS document contains the list of core contributors to GTK and the areas for which they are responsible.