|
Packit |
15f964 |
This directory contains files related to Flatpak build of Evolution. Apart
|
|
Packit |
15f964 |
of Evolution itself, it builds also evolution-data-server, and uses it,
|
|
Packit |
15f964 |
the same as evolution-ews for Exchange Web Services accounts.
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
The build uses GNOME Flatpak SDK and runtime.
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
To build it, one can follow the below commands, which expect flatpak and
|
|
Packit |
15f964 |
flatpak-builder installed. Refer to the Flatpak developer documentation
|
|
Packit |
15f964 |
and command man pages for the meaning of respective arguments.
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
Note the actual versions of the GNOME SDK and Platform (below is used
|
|
Packit |
15f964 |
version 3.26) can differ each release of Evolution. The exact expected
|
|
Packit |
15f964 |
version can be seen (or changed) in the .json file, the runtime-version
|
|
Packit |
15f964 |
key (line "runtime-version": "3.26",). Use the same version in the below
|
|
Packit |
15f964 |
install commands as is written in the runtime-version key of the .json file.
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
To prepare Flatpak, add GNOME repository and install the SDK and Platform:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak remote-add --from gnome https://sdk.gnome.org/gnome.flatpakrepo
|
|
Packit |
15f964 |
$ flatpak install gnome org.gnome.Platform//3.26
|
|
Packit |
15f964 |
$ flatpak install gnome org.gnome.Sdk//3.26
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
After this, Evolution can be built. While the below commands build the git master
|
|
Packit |
15f964 |
version of Evolution, it can be changed to the stable version, when all "-master"
|
|
Packit |
15f964 |
occurrences are replaced with "-stable":
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak-builder --force-clean org.gnome.Evolution-master org.gnome.Evolution-master.json
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
The above command can be repeated multiple times, for cases when the build fails
|
|
Packit |
15f964 |
and any changes are required.
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
Once it's built, Flatpak requires the built application to be added as a repository,
|
|
Packit |
15f964 |
which means to create, add and install it:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak build-export repo-master org.gnome.Evolution-master
|
|
Packit |
15f964 |
$ flatpak --user remote-add --no-gpg-verify --if-not-exists evolution-repo-master repo-master
|
|
Packit |
15f964 |
$ flatpak --user install evolution-repo-master org.gnome.Evolution
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
And it's basically it. The last thing is to run the flatpak version of Evolution:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak run org.gnome.Evolution
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
In some cases one might need to debug the build environment, which can be done
|
|
Packit |
15f964 |
with the following command. It opens a bash terminal where can be examined
|
|
Packit |
15f964 |
built data in the /app prefix:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak run --devel --command=bash org.gnome.Evolution
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
A short command to rebuild any changes, refresh the repository and update
|
|
Packit |
15f964 |
installed Evolution from this repository can look like:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak-builder --force-clean org.gnome.Evolution-master org.gnome.Evolution-master.json && \
|
|
Packit |
15f964 |
flatpak build-export repo-master org.gnome.Evolution-master && \
|
|
Packit |
15f964 |
flatpak --user update org.gnome.Evolution
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
Note the above commands install the Evolution as a user repository, not
|
|
Packit |
15f964 |
as a system repository, while the GNOME platform and SDK are installed
|
|
Packit |
15f964 |
into the system repository (which requires root password). Add --user
|
|
Packit |
15f964 |
argument to the first three commands at the top to avoid the root requirement.
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
Finally, to clean up installed Flatpak data, check what is installed:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak list
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
and remove Evolution from there:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak --user uninstall org.gnome.Evolution
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
Then also check what repositories are installed:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak remotes
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
and remove the custom Evolution repository with:
|
|
Packit |
15f964 |
|
|
Packit |
15f964 |
$ flatpak --user remote-delete evolution-repo-master
|