gvfs is so annoying - always eat CPU from 1-2 to 20-30% from one core. But I don't use it.
I have installed ports with mandatory dependency from devel/gvfs:
But a simple hack remove the dependency:
diff -ur ports.orig/Mk/Uses/gnome.mk ports/Mk/Uses/gnome.mk
@@ -296,7 +296,7 @@
librsvg2_USE_GNOME_IMPL=libgsf gdkpixbuf2 pango
-nautilus3_USE_GNOME_IMPL=gnomedesktop3 gvfs libxml2
diff -ur ports.orig/x11-fm/nautilus/Makefile ports/x11-fm/nautilus/Makefile
@@ -20,7 +20,7 @@
USES= desktop-file-utils gettext gmake gnome libtool pathfix \
-USE_GNOME= intlhack gnomedesktop3 libxml2 gvfs introspection:build
+USE_GNOME= intlhack gnomedesktop3 libxml2 introspection:build
diff -ur ports.orig/x11-toolkits/libgnomeui/Makefile ports/x11-toolkits/libgnomeui/Makefile
@@ -21,7 +21,7 @@
USES+= bison gettext gmake localbase libtool:keepla pathfix pkgconfig
-USE_GNOME= gnomeprefix intltool libbonoboui referencehack gvfs
+USE_GNOME= gnomeprefix intltool libbonoboui referencehack
If gvfs is indeed optional (even with some functionality loss) for these ports, this change likely needs to take the form of creating a GVFS option and leaving it as a default enabled option (in OPTIONS_DEFAULT) as a couple of ports  already do, and adding in any explicit --enable/disable configure (or other build) options for the gvfs functionality.
sysutils/gigolo also unconditionazlly uses gvfs, but is potentially an OPTION'alisation candidate.
 graphics/gimp-app, audio/xmms2
Note: gnome@ is the maintainer for all ports referenced in this comment 0
Created attachment 217093 [details]
x11-toolkits/libgnomeui: removed unused dependency from gvfs
Build with and without gvfs installed does not affect anything.
x11-fm/nautilus self doesn't depends on gvfs, but Mk/Uses/gnome.mk have list of nested dependencies for nautilus (if other port compiled with nautilus support on): nautilus3_USE_GNOME_IMPL=gnomedesktop3 gvfs libxml2.
Why we have gvfs here?
Ports graphics/evince and sysutils/brasero are affected by this.
Created attachment 217095 [details]
Mk/Uses/gnome.mk: removed nested dependancy from gvfs in nautilus3 uses
This patch need exp-run.
* Not tested:
(In reply to VVD from comment #2)
gvfs is not designed to be needed during the build. gvfs provides GLib modules and a FUSE service. Most applications use gvfs via GLib API, so compiling them successfully without gvfs does not mean they don't need gvfs at runtime.
(In reply to VVD from comment #3)
gvfs is needed for GLib to mount network shares, such as FTP, SFTP, SMB, WebDAV. I think it is correct for nautilus to depend on gvfs by default because accessing network shares is an important feature of nautilus.
(In reply to Ting-Wei Lan from comment #5)
1. They work fine without gvfs installed, but with lack of some functionality only. It's optional dependency anyway.
2. nautilus doesn't need it for work too. But I said about nested dependencies, not about nautilus' dependencies.
Probably better make GVFS option for x11/gnome3 or something else, but not mandatory for a lot of ports.
(In reply to VVD from comment #6)
It is an optional dependency, and most applications probably don't care whether gvfs is installed. For applications which don't provide special features for remote files, I think it is fine to remove the dependency on gvfs.
However, nautilus should be treated specially. There is a page describing how to access network shares in its documentation, assuming the feature is always available. Instead of dropping the dependency, I think it should be better to move the dependency to x11-fm/nautilus port itself, so it can be controlled by a GVFS option which is enabled by default.
I don't think x11/gnome3 will need a GVFS option. If you use GNOME desktop, you should have gvfs installed. Neither JHBuild modulesets nor gnome-build-meta considers gvfs to be optional in a GNOME desktop environment.
Created attachment 217098 [details]
x11-fm/nautilus: make gvfs as option for nautilus
Done. If I correct understood your suggestion.
(In reply to VVD from comment #8)
These 3 patches are OK to me, but I can't approve them for you because I am not the maintainer. The last patch will be better if it clearly states that disabling gvfs is an unsupported configuration.
Are we waiting for something?
All patches are attached.
(In reply to VVD from comment #11)
Sorry, this fell from my todo list :)
A commit references this bug:
Date: Sun Sep 13 15:58:47 UTC 2020
New revision: 548483
Make dependency of devel/gvfs optional for a several different ports
- this makes it possible for users to not install gvfs by making it an optional dependeny
- and moving it to nautilus directly instead of very high up the gnome stack in libngomeui
- it is on by default in nautilus, so no change for users of that
Submitted by: VVD <email@example.com>
Committed. Thanks for the patch!
(In reply to Tobias C. Berner from comment #14)
2 years and 4 months left and it's done now! :-D