GVfs communicates with daemons over abstract sockets. Currently, synchronous
GIO API doesn't work for GVfs locations, because abstract sockets seem to be
blocked by sandbox permissions. This is not problem in most cases as Nautilus
uses asynchronous API usually. But this breaks e.g. "Empty Trash" functionality
as it is for some reason based on synchronous API.
In order to fix this problems, it is necessary to allow access to sockets
beginning with `unix:abstract=/dbus-vfs-daemon/socket-`, but I am not aware of
better way than adding `--share=network`, which allows access to all abstract
sockets:
http://docs.flatpak.org/en/latest/sandbox-permissions-reference.html#f2
Just a note that it is not clear to me, why it affects only the synchronous
API as the asynchronous API also uses abstract sockets. See the corresponding
Flatpak bug:
https://github.com/flatpak/flatpak/issues/2711
We were using the xdg directories to check whether we can star a file
or not, since the star feature only works on directories that are
tracked by tracker.
Tracker is usually shipped in distributions tracking the
xdg-directories, so we check that as a stop gap solution for 3.30
since we didn't have time to actually query what directories tracker
is tracking and match that.
This work makes it so that we show the star action on tracked
directories.
builddir: true is assumed always whenever the buildsystem is meson.
libdir no longer needs to be specified, and cmake was patched to
be able to deal with lib64. See [1] for more.
[1]: https://gitlab.gnome.org/GNOME/gnome-build-meta/issues/77
This seems to have been broken for a while now cause by default
it tries to install a python overide in the python shared packages
in /usr, but this is immutable since it comes from the runtime.
This patch disables that.
Currently network is used during build time because of pip fetching from
internet.
However network should not be used during build time.
To fix this issue, use gcovr.json generated by flatpak-pip-generator
and replace them with gcovr module in org.gnome.Nautilus.json and
org.gnome.Nautilus.yml and remove build option that uses network.
Closes issue https://gitlab.gnome.org/GNOME/nautilus/issues/681
This pins versions of most dependencies, uses quotes for strings and
removes header cleanup from GTK+ module, because CI pipelines choke on
them being absent when ninja decides to rebuild everything when running
tests.
(cherry picked from commit a9f13fc91f7319b318e75a95a89918e9cadf94cf)
Builder keeps trying to format the JSON automatically for any change,
which is quite cumbersome since it appears as a changed file on git and
also it's a mess if an actual change happens.
Just accept the defeat and go with whatever Builder wants.