Flatpak as part of the development process

Aleix Pol aleixpol at kde.org
Fri Mar 31 17:26:44 UTC 2017


Hi,
One thing that makes a lot of sense (and I think people at Gnome are
already doing somewhat) is having the builder json files in the
project's directory. Something like it's done in Builder:
https://github.com/GNOME/gnome-builder/blob/master/org.gnome.Builder.json

The approach makes a lot of sense, as you have specifically defined
how you want your project to be built for flatpak. The problem there
is that there's no good way of pointing at the actual current
repository for building the source.

This has some problems.
* First, a bootstrapping problem, where you need to get the project in
some git repository (or tarball) to get it built.
* It also has the problem that it won't react to local changes, which
means we're enforcing the adoption of a workflow tightly coupled to
some technologies that in principle are not that related. (git and
archives)
** It makes it impossible for developers to distribute a tarball with
a useful json inside. They will have a tarball that won't be used for
anything, and the json file will be building else from git, possibly
something different.
** git checkout a branch won't affect on the build (unless git points
to a local path à la file:///home/.../myproject, which has obvious
problems)

To solve this issue, I'd suggest allowing the project directory using
a relative path to the json file. This will allow to compile what we
already have, without the round-trip.

sources: [ { "type": "file", "path": "." } ]

That said, this could have problems, such as these relative paths
going outside of the project (e.g. "../myawesomelibrary"). This should
be an error.

Does that make sense to you? Am I missing something?

Regards,
Aleix



More information about the xdg-app mailing list