Guacamole is an open source project. It is entirely free in every sense (under the Apache License, Version 2.0), and will always be so.
We believe that being open source gives Guacamole distinct advantages over purely-commercial alternatives. The public availability of the source means that the codebase is readily modifiable and extendable. It can be embedded in whole or in part in other projects. For the sake of the project and its community, significant effort is made by the Guacamole team to keep the codebase clean and readable. Guacamole is not a “black box”; you can read through the codebase and see exactly what it does and why. Commercial support is available, but because the software itself is free and open, there is no aspect of vendor lock-in.
Guacamole is not public domain, but the Apache license is very permissive, and as long as you follow it’s simple conditions, you can modify and include Guacamole in other projects to your heart’s content, including commercial or proprietary projects.
The Apache Guacamole project operates as a meritocracy. The project is made up of volunteers who, based on the subjective judgement of the existing project members, have demonstrated merit through their contributions and thus have been offered membership themselves. If you wish to join the project, the first step is to be active in the community as a contributor.
Contributors who show merit through the quality of their continuing activity in the community and their contributions to the project will be invited to become committers or members of the PMC.
If you believe you have a feature or bug fix that would benefit the project, or simply wish to help other users, please feel free to subscribe to and use the project mailing lists. To ensure issues are properly tracked and development effort is not duplicated, all bugs or proposed development should be reported by opening a new ticket in our JIRA.
Code contributions are also always welcome, but do have to go through a review process. The code will more than likely be discussed and sent back a few times in order to bring the style and implementation in line with the rest of the Guacamole codebase.
If you are planning to contribute code, please keep in mind that the point of contributing is to collaborate for the benefit of the project and its community; it is a service you are choosing to provide because you believe, as the members of the Guacamole project believe, that doing so works toward the greater good. It is thus important to remember:
Our full contribution guidelines can be found in the CONTRIBUTING
file in any
of our git repositories. If you need help getting started, the API
documentation is an excellent resource, as are the
mailing lists and the tutorials in the
manual.
Committers actively maintain and contribute to the Apache Guacamole project, produce releases, review the code of contributors and fellow committers, and identify contributors who have shown merit and should be offered committership.
Committers have write access to Apache Guacamole’s git repositories, but do not make direct changes on their own behalf. Code changes are made only through pull requests, and are merged only after code review by a committer not otherwise directly involved in those changes.
The Apache Guacamole PMC is made up of committers and is responsible for project oversight. PMC members participate in discussions on the mailing lists and vote on release candidates, new committers, and new PMC members. The PMC is responsible for identifying members of the community who have shown merit warranting committership and/or PMC membership.