Some time ago an attempt was made to store untracked output as artifact,
but since `$(pwd)` wasn't evaluating anyways, nothing was uploaded. See
https://gitlab.com/gitlab-org/gitlab-runner/-/issues/31035#note_1555090802.
Also, the test restarts the entire build, which is not needed
and takes a long time.
Instead, we can have the Meson build output stored as artifact, and have
the test just run without rebuild. This speeds up the CI.
The sanitizers should not pull the artifact though, so make those only
depend on the container.
The command `meson . _build` was depecrated in favor of `meson setup
_build`, so let's use that instead.
Also, stop using ninja commands directly, as meson has support for that
syntax now too, making for a more consistent interface.
Memory sanitizer needs `compiler-rt` to link properly.
There's a YAML anchor that specifies the basic keys already, so no need
to repeat them.
Also, remove a left over comment.
GTK 4.15 made the new Vulkan renderer the default. I tried getting the
tests to pass using that, but could not.
So for now, revert to the `new GL` renderer, which is still very new as
well.
Fedora obviously builds gnome-control-center as well, and therefore
allows one to get all the required deps with `dnf builddep`. We can use
that to clean up the dependency list massively.
If we do need specific packages, we can add them in the future, but that
was anyways needed for new dependencies.
The `artifacts` key for a job can only be specified once, so using a
YAML anchor for it does not directly work. Instead, we have to do it
inside `artifacts`.
Currently, containers get stored based on their Fedora version, but that
can make it hard to see which container is used in which branch.
Instead, we can use `FDO_REPO_SUFFIX` to sort the containers based on
their branch name.
This would also make it easier to see which containers can be removed,
as there are currently gigabytes of unused containers it seems.
To make it as neat as possible, the images now get stored as
`main/2024-05-19.0-fedora-rawhide` for example.
Recent improvements to GOA (among which a port to GTK4) required
building it from git. Now that Fedora 40 is out with that version in it,
we can use that instead.
When the switch to GTK4 happened, commit b3b86894 introduced manual
builds of some dependencies as GTK4 support was still very new. Now that
GTK4 has been out for quite some time, these dependencies are available
in Fedora with GTK4 support, so just use them instead.
Note that `gnome-desktop3-devel` is still needed for the g-s-d build.
This was needed as a workaround for Infrastructure/GitLab#545, but that
has long been solved.
The manual asan test can (potentially) be used again too now.
This script checks for files that are translatable, but are missing from
POTFILES.in. Also, it checks whether files that are in POTFILES.in are
translatable at all or are missing.
Based on nautilus!1418.
Closes#2845
Fixes podman issue
Error: Error reading blob sha256:4bb4a44c73af78e20e3d4c36bc1ce95b4b77a546f11a65babf752f869f1ca655:
open /var/lib/containers/storage/vfs/dir/9b8cfd27e86ef18db67fbda7d61d72046f3f5d8ad312655713d4cd8b065c80cd/usr/bin/staprun: permission denied
Related to https://gitlab.gnome.org/Infrastructure/Infrastructure/-/issues/1247
We were facing this CI build failure error
[573/879] Linking target panels/online-accounts/gnome-control-center-goa-helper
FAILED: panels/online-accounts/gnome-control-center-goa-helper
cc -o panels/online-accounts/gnome-control-center-goa-helper panels/online-accounts/gnome-control-center-goa-helper.p/gnome-control-center-goa-helper.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,--start-group /usr/lib64/libgoa-backend-1.0.so /usr/lib64/libgoa-1.0.so /usr/lib64/libgtk-3.so /usr/lib64/libgdk-3.so /usr/lib64/libz.so /usr/lib64/libatk-1.0.so /usr/lib64/libpangocairo-1.0.so /usr/lib64/libharfbuzz.so /usr/lib64/libgio-2.0.so /usr/lib64/libgdk_pixbuf-2.0.so /usr/lib64/libcairo-gobject.so /usr/lib64/libpango-1.0.so /usr/lib64/libcairo.so /usr/lib64/libglib-2.0.so /usr/lib64/libgobject-2.0.so -Wl,--end-group
/usr/bin/ld: /usr/lib64/libtracker-sparql-3.0.so.0: undefined reference to `g_assertion_message_cmpint'
collect2: error: ld returned 1 exit status
g_assertion_message_cmpint is available in newer glib than what's in
our container image.
Since "builddep" is part of dnf5-plugins in DNF5.
See https://gitlab.gnome.org/GNOME/gnome-control-center/-/jobs/2933787
Unknown argument "builddep" for command "dnf5". Add "--help" for more information about the arguments.
$ echo "== Installing =="
== Installing ==
$ ninja -C _build install
ninja: Entering directory `_build'
ninja: fatal: chdir to '_build' - No such file or directory
Cleaning up project directory and file based variables 00:02
ERROR: Job failed: exit code 1
libadwaita 1.4 depends on appstream, and builds have
been failing because the subproject fails to build.
This commit adds appstream as a dependency so that
the libadwaita subproject can build without issues.
We also bump FDO_DISTRIBUTION_TAG to rebuild the image.
So that the "Finalizing foo, but it still has children left" message is
not truncated. This commit will be reverted when GTK is new enough in
our image.
Bump the version of the CI image to force a rebuild. This should bring
us a newer version of Mesa that would fix problems running GTK4 with
Xvfb as a display server:
libEGL fatal: did not find extension DRI_Mesa version 1
Closes: #2397
This was missing out the `polkit-autogen` file, so the flatpak build was
failing because of that. Fix this by removing the copying phase and use
the correct manifest path directly instead.
The gnome-runtime-images have been recently migrated to Quay. This is already reflected in the template.
Please note this MR has been created semi-automatically. If it doesn't make sense, feel free to close it.