G-Golf uses Git for revision control, hosted
on Savannah, you may browse the
sources repository here.
You may participate to G-Golf in different ways: you
may want to just follow the project, to try it and report your impressions, to give us
some constructive feedback, or you may decide to actively contribute
to G-Golf, which could be contributing to the documentation,
the source code, the test-suite or all.
Actively contributing to G-Golf source code - in
addition to have a reasonably good Guile scheme knowledge and
practice - requires that your are at least familiar, but preferably that
you have a good knowledge of the GObject Introspection, GObject and Glib libraries.
G-Golf high level API extensively use GOOPS,
the Guile Object Oriented System.
If you want to contribute to G-Golf, please install from the source, then:
- Checkout the devel branch
- cd <to-your-g-golf-git-repo>
- git checkout devel
- Build and read the documentation (in the source tree) - its
content his (so far) especially dedicated to ourselves, potential
contributors and future maintainers.
Everyone has their own documentation format preferences,
feel free to adapt, here is how you would (source tree) build the html
doc - using the distributed enhanced css file provided by G-Golf:
- cd doc
- makeinfo g-golf.texi --html -c DOCTYPE='<!DOCTYPE html>' -c FORMAT_MENU='menu' --css-ref=../css/manual.css -o g-golf.html
To browse it (use your favorite browser of course, our is
- epiphany g-golf.html/index.html &
- Read (at last partially) the source code and get yourself
familiar with our coding and naming conventions.
- Read at least a few commits, and get yourself familiar with
our commit conventions. We have no specific document about this (yet),
but we (try to) follow Guile and Guix commit style
- Try G-Golf: it comes with a few examples, a list we
hope to grow. If you wish to contribute with an example, carefully read
the source code of a few, and get yourself familiar with our coding and
Ultimately, one of the best way to participate is to select G-Golf to develop the next application of your dream! Visit
the GNOME platform libraries overview, accessible using
In particular, libadwaita provides a number of
widgets that change their layout based on the available space. This can
be used to make applications adapt their UI between desktop and mobile
devices. The GNOME Web (best known through its code name, Epiphany, is a good example of such an adaptive UI.
and send these patches to:
Please use 'G-Golf - ' to preceed the subject line
of G-Golf related emails, thanks!
G-Golf uses the following bug reports mailing list: