Clairvoyant

Ask questions, get psychic answers

On this page you can learn how to contribute to Clairvoyant. If you are interested in general information about this app, please visit the Apps for GNOME page.

Translating the app

The original text in apps is usually written in American English. The translation into other languages can be added by translators separately. The translation usually encompasses the apps’ user interface as well as the metadata shown in places like Software or apps.gnome.org. Common abbreviations used in this context are l10n (localization) and i18n (internationalization).

Trying the latest version

When reporting an issue or suggesting a feature, it can be helpful to base the report on the latest version of the app. To this end, you can check the installation methods below.

Installation from Flathub

If you found an issue or want to propose a change you should try to make sure you have tried out the latest version of Clairvoyant. You can check the current version in the app’s “About” section.

The latest released version on Flathub is version 3.1.10.

Quality testing

Catching issues and regressions before they land in a stable release is very valuable for a project. You can help with this by trying out an upcoming release.

You can do this by manually building the app and trying it out.

Chasing issues

For many apps, the issue tracker is a central place for coordination of app development. It is not only used to track all existing problems but also to plan new features and other miscellaneous tasks.

Reporting found issues

Reporting issues you found when using the app can be of high value for app maintainers. However, processing issue reports can also take considerable amount of time. You can take on some of the work by trying the following steps:

Diagnosing listed issues

Tracking down the exact cause of an issue can be a very important task. Especially for issues tagged with labels like “Needs Diagnosis” or “Needs Information.” If you can reproduce, that is, trigger the reported problem yourself, you can try to dig deeper. This can go from finding out under which exact conditions the issue appears, over running the app with debug output enabled, to adding debug outputs to the code that narrow down the problem.

Suggesting features

Most apps handle feature requests via the issue tracker as well. Note that implementing features and maintaining them as part of the codebase in the future can require a significant amount of additional work. Therefore, you should consider whether a new feature could even be relevant enough to be part of this app.

When suggesting a new feature, it is helpful to focus on the question of what practical problem the feature should solve. Not on how the app should solve the problem or how exactly an implementation would look like. Preferably, you can also give a practical example where you needed the feature.

Finding a task

The issue tracker can also help you find open tasks you could tackle. Before implementing a new feature, it is usually a good idea to check in with the maintainers if merge requests for this feature would be accepted.

Working on the code

Whether you want to fix a typo, change the user interface, or work on the code of the app, the following information can help you get started. The first step will be to get the app built on your computer, allowing you to play around with your changes. Afterward, you can check the provided documentation on how to get respective tasks done. The subsequent section will show you how to submit your changes.

If you are planning a somewhat larger change or addition to the app, it is often a good idea to check in with the maintainers of the app to find out if that change would be accepted. For this, you should first convince yourself that you can tackle the task at hand by doing the very first implementation steps and then check in with the maintainers via the issue tracker. This is also a good way to check if the project has an active maintainer who can accept your contribution. Despite our best efforts, not all projects are always continuously maintained.

Note that while many community members are happy to help you out when you are stuck, maintainers oftentimes might not have the resources to guide you through a contribution.

If you are overwhelmed by working on an existing GNOME app, you can also look into building your own app for learning purposes first.

Getting the app to build

When making changes to an app you will usually want to build and test the app with its changes on your computer. For most apps this process can be simplified a lot by using the Builder app.

After starting Builder, you can choose to clone a project. This will download the app to your computer.

Clone Repository…

You have to enter the repository location. The correct URL can be copied from below.

Repository URL
Clone Repository

Depending on your internet connection and the size of the project, cloning the project might take a while. After Builder has completed this step, the project window should open. You might have to confirm the installation of some required dependencies. To try if you can successfully build and start the app, you can now press the “Run Project” button.

Clairvoyant

If everything goes right, the app should be built. After the build has been completed, the built app should start automatically.

Vala language

This app is built with the Vala programming language.

For getting started with the Vala language, we recommend the Vala Tutorial or the Beginners Tutorial, which also covers Vala. You can find other important resources below.

Select Language