Coding for Wammu and Gammu

Gammu is written in C and Wammu in Python, so you will need knowledge of one of these languages to contribute code directly to the project. You will probably use some parts of developer documentation to understand the code. If you want to know what is planned to happen in Gammu and Wammu, please check the roadmap.

Version Control System

We currently use Git as a version control system. It allows you create own local branch, develop the code and then submit us patches or merge request for the changes.

The Git repositories are being hosted on Github service, in the Gammu project. You can browse the code on their site or just clone the repository and investigate it locally. To clone Wammu and Gammu sources, use following commands:

# For Wammu sources:
git clone https://github.com/gammu/wammu.git

# For Gammu sources:
git clone https://github.com/gammu/gammu.git

# For python-gammu sources:
git clone https://github.com/gammu/python-gammu.git

# For Wammu website:
git clone https://github.com/gammu/website.git

Instructions for building and installing are included in file INSTALL in both Gammu and Wammu. For compiling Gammu you need to have CMake.

Code Snapshots

If you for some reason do not want to use version control system, you can always download fresh snapshots of current code from GitHub.

Patch Submission

The easiest way to submit a change is a pull request to the corresponding GitHub repository. If you want to discuss an approach before writing code, start a topic in the community forum. Use the bug tracker for bug reports and feature requests.

Testing

Gammu comes with quite comprehensive testsuite, which is being run continuosly using Travis.