How to contribute to Xfce
Xfce is developed by a small group of hard-working volunteers. There are many ways in which you can contribute to Xfce, all of which are most welcome!
For a more in-depth look at how to contribute to Xfce, it is recommended to read The Ultimate Contributor's Guide to Xfce for additional helpful information.
If you would like to donate to Xfce, please see the Donations section.
Bug Reporting and Testing
One of the most useful tasks that we rely on the community for is testing and reporting of bugs.
- You can report bugs on Xfce GitLab site
- You can ask for help on various channels.
- Please do not use the forums to report bugs.
Before submitting a bug, please try your best to check if it has already been reported. When writing your bug report, try to be as descriptive as possible, but avoid verbosity; Mozilla has a nice guide on how to write a bug report.
For more information, see Bug Reporting and Fixing.
- For a list of currently open bugs, see the open bugs summary.
If you want to test the current state of Xfce 4.16, you can look at the Xfce-Test Quick Start Guide, which provides instructions for running a Docker container with the lastest code from git master as well as the ability to run Behave (behaviour-driven development) tests.
- As of November 2020, OpenSUSE is now providing a source for “Xfce’s latest builds based on openSUSE’s rolling release Tumbleweed”. This is available as a QEMU based virtual machine.
- Xfce Virtual Machine Images For Development provides additional information for its installation and bug reporting instructions.
There are various ways to get in touch with Xfce developers:
See the Xfce Development Information page for information on contacting the Xfce development team.
See the Xfce Development Information page for details on getting a contributor's account, working with Git and Xfce source code, and instructions for making releases. As well check the Xfce Wiki more development hints, tips and tricks.
The Xfce Wiki and Documentation contain many helpful pages that require maintaining and updating with every new release. The wiki is freely available for anyone to edit, refer here for information on how to contribute to the documentation. The API reference is automatically updated on a weekly basis based on the latest stable releases.
Update: May 2023: At this time, we are temporarily pausing our acceptance of donations. We would like to thank everyone who has previously contributed to the Xfce project. Your support is greatly appreciated! Thank you!
As of May 2021, Xfce has moved its fiscal hosting to OpenCollective. We are now able to accept financial contributions in both US Dollars as well as Euros. If you wish to donate to Xfce in USD or with PayPal, you can do so by visiting Xfce’s OpenCollective page. Alternatively, if you wish to contribute in Euros, visit Xfce’s EU OpenCollective page. Every donation is greatly appreciated, but please remember, this is an open source project that is 100% run by volunteers, no one is implicitly obliged to act upon your requests.
For contributions in USD (SWIFT transfers / PayPal / credit card):
For contributions in EUR (SEPA transfers / credit card):
Note: For financial contributions to the Xfce (EU) Collective, there is a 6% transaction fee. Additionally, SEPA transfers may take several business days to process and will not appear in the transaction records immediately.
For a list of our supporters and details on individual transactions, see our Supporters page.
For additional details regarding Open Collective, see Xfce financial contribution administration - Open Collective
Although the philosophy of Xfce is to find the correct balance between features and lightweight, it is still possible to request new features.
If you plan to request a new feature, please first check on our issue tracker if someone else already filed a request for it. If not, open a new issue and describe your idea in detail. Be warned: You might think your idea is brilliant, but there is a high possibility that there are major downsides.
Obviously, the best way to get your new feature integrated is, to provide a merge request that implements it !
Please note that some components are rather unmaintained, so you might not always get a reply.