How do I add custom repositories (other than gitlab.gnome.org) and packages to jhbuild?
Specifically, I would like to checkout and build https://gitlab.freedesktop.org/polkit/polkit/ as part of my jhbuild workspace. jhbuild will try to checkout any package form gitlab.gnome.org/GNOME, e.g. jhbuild buildone polkit will try to fetch the package from https://gitlab.gnome.org/GNOME/polkit.
The reason I want to add polkit to the workspace is that gnome-shell depends on more recent versions of polkit than what is available in the host distribution: (gnome-shell:31894): Gjs-WARNING **: 01:11:05.996: JS ERROR: Error: Requiring Shell, version none: Typelib file for namespace 'PolkitAgent', version '1.0' not found @resource:///org/gnome/shell/ui/environment.js:13:7 @<main>:1:1
Bonus question: How would I add this setting to the jhbuild repository such that these packages, which are not part of the GNOME repo, will be checked out automatically?
Then I am not sure which package would be missing. I experienced this on Ubuntu 18.04 LTS and the latest 20.04 development version. jhbuild sysdeps does not show unresolved dependencies. I can work around this by manually cloning the polkit repo into checkout and building this explicitly.
Does this mean, that I can add custom packages to bootstrap.modules and potentially open a MR for this?
Does this mean that polkit should not be part of the moduleset?
I’m not a Ubuntu expert (or even user), but my guess is on gir1.2-polkit-1.0.
Modules are usually added to one of gnome-suites-core, gnome-suites-core-deps, gnome-apps or gnome-world rather than bootstrap - that moduleset provides basic buildtools on Mac OS where sysdeps don’t work - but yes, it’s possible to open MR for any jhbuild changes (including moduleset changes).
But not for adding polkit, because …
… it already is part of the gnome-sysdeps-latest moduleset. Which is appropriate, given that RHEL 6 is probably the only supported distribution that doesn’t satisfy the dependency (RHEL 7 and 8 of course do).
However there clearly is an issue with sysdeps support on Ubuntu, I’m sure any MR that improves its adequacy is welcome.