Difference between revisions of "GVFS"

From ArchWiki
Jump to: navigation, search
(move note)
m (Tips: using dbus-launch is deprecated - replaced with link to General Troubleshooting#Session permissions)
(10 intermediate revisions by 8 users not shown)
Line 1: Line 1:
 
[[Category:File systems]]
 
[[Category:File systems]]
 +
[[ru:GVFS]]
 
[[Wikipedia:GVFS|GVFS]] is the virtual filesystem for the GNOME desktop, which allows mounting local and remote filesystems as a user along with trash support. It is also used by file managers like [[Thunar]].
 
[[Wikipedia:GVFS|GVFS]] is the virtual filesystem for the GNOME desktop, which allows mounting local and remote filesystems as a user along with trash support. It is also used by file managers like [[Thunar]].
  
==Installation==
+
== Installation ==
  
The {{pkg|gvfs}} package needs to be installed, along with {{pkg|polkit-gnome}} for the polkit rules.
+
The {{Pkg|gvfs}} package needs to be [[pacman|installed]], along with {{Pkg|polkit-gnome}} for the polkit rules.
  
==Getting mounting working==
+
It requires [[dbus]].
  
{{Note|You must be using [[systemd]] as your init system for local sessions to work.}}
+
== GVFS without root password ==
  
First, make sure you have a valid local session within X:
+
In file managers (e.g. Thunar), when you try to mount a drive, you might see that you need to enter the root password to continue every single time you want to mount and unmount a drive. This can be bypassed by setting a [[polkit]] rule.
  
$ loginctl show-session $XDG_SESSION_ID
+
In the directory {{ic|/usr/share/polkit-1/rules.d}}, create this file named {{ic|10-drives.rules}}:
  
This should contain {{ic|1=Remote=no}} and {{ic|1=Active=yes}} in the output. See [[xinitrc#Preserving the session]] for troubleshooting if it does not.
+
polkit.addRule(function(action, subject) {
 +
if (action.id.indexOf("org.freedesktop.udisks2.") == 0){  
 +
        return polkit.Result.YES;
 +
    }
 +
}
 +
);
  
A dbus session should also be started along with X, in a way that exports a single {{ic|DBUS_SESSION_BUS_ADDRESS}} for every application in your session. The simplest way to do this is if you don't use a desktop environment is to copy the code from {{ic|/etc/skel/.xinitrc}} that runs files in {{ic|/etc/X11/xinit/xinitrc.d}} to your {{ic|~/.xinitrc}}, and avoid using {{ic|dbus-launch}} or {{ic|ck-launch-session}}.
+
Drives will now mount without any intervention from you. If you need to specify which users can perform this action or other restrictions, refer to polkit manual page.
  
==Troubleshooting==
+
== Tips ==
  
There is a [https://bugs.archlinux.org/task/32325 known bug] that causes duplicate entries for drives.
+
GVFS needs [[dbus]] to work well. See [[General Troubleshooting#Session permissions]] for details.

Revision as of 11:55, 8 August 2013

GVFS is the virtual filesystem for the GNOME desktop, which allows mounting local and remote filesystems as a user along with trash support. It is also used by file managers like Thunar.

Installation

The gvfs package needs to be installed, along with polkit-gnome for the polkit rules.

It requires dbus.

GVFS without root password

In file managers (e.g. Thunar), when you try to mount a drive, you might see that you need to enter the root password to continue every single time you want to mount and unmount a drive. This can be bypassed by setting a polkit rule.

In the directory /usr/share/polkit-1/rules.d, create this file named 10-drives.rules:

polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.udisks2.") == 0){ 
       return polkit.Result.YES;
   }
}
);

Drives will now mount without any intervention from you. If you need to specify which users can perform this action or other restrictions, refer to polkit manual page.

Tips

GVFS needs dbus to work well. See General Troubleshooting#Session permissions for details.