Help configuring GVFS with pcmanfm 0.9.2 - not authorized

The dedicated forum for PCMan File Manager - http://wiki.lxde.org/en/PCManFM
grogers3.14
Posts: 8
Joined: Fri Jan 29, 2010 6:27 pm

Re: Help configuring GVFS with pcmanfm 0.9.2 - not authorized

Post by grogers3.14 »

karabaja4 wrote:
grogers3.14 wrote:I just added 2 packages tp the AUR which you may like. One is gvfs-lite, which is gvfs with few dependencies, and gnome-mount-lite, because pcmanfm would not mount my drives without it. Hope you like them!

gvfs-lite http://aur.archlinux.org/packages.php?ID=36042
gnome-mount-lite http://aur.archlinux.org/packages.php?ID=36041
Thanks so much for this!

Just a note, it seems that gnome-mount is using HAL to mount the drives, it would be better if we could avoid that component because HAL will soon become deprecated...

EDIT: nevermind, I just saw u added gnome-disk-utility instead of gnome-mount as a dependency... So we can remove the gnome-mount-lite package? ;)
Yes, that was my mistake. When I was trying to get gvfs to work, I got an error saying gnome-mount could not be found, so I made the gnome-mount-lite package. Then I found out gnome-mount was replaced with gnome-disk-utility :?
EDIT2: something's wrong. I still get gnome-mount missing error with your gvfs-lite and gnome-disk-utility from the repo..

EDIT3: Something's missing from your gvfs-lite PKGBUILD that's causing the gnome-mount error. I just wrote a new one following the template from official gvfs PKGBUILD, now it works for me. I have no idea what exactly was the problem with your version (at least on my configuration), but I'm too lazy to try to find out.
Strange, its working fine for me.

I couldn't access the PKGBUILD (404 not found)

Is the error saying that you don't have permission? If so, then you need either gnome-keyring or lxpolkit (lxpolkit-git in AUR). This is because gnome-disk-utility uses polkit to get permissions and gnome-mount did it all through HAL.

Does the CD drive not show up in the sidebar? If so, dbus isn't running. Try this:

Code: Select all

killall pcmanfm2
if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
       eval "$(dbus-launch --sh-syntax --exit-with-session)"
fi
pcmanfm2 --daemon-mode
EDIT4: I did a few experiments on gvfs without dependencies. Turns out you must be careful what you exclude. Some of these dependencies we threw out are needed for support on CD drivers, FTP remote folders, Bluetooth devices etc. You must only exclude what you don't need, excluding everything is not such a good idea.
Which dependencies are needed for what? The CD drive works for me on my system. I don't have and FTP remote folders or bluetooth devices, so I cannot test those. However, I did not add anything that would prevent them from working. If I am correct, if you have the package installed, gvfs will automatically compile support for it. Perhaps I should add optional dependencies to make this clearer?

Just to be clear, the packages I am using are:
pcmanfm-git
gvfs-lite
gnome-disk-utility-git with gnome-keyring dependency removed (lxpolkit used instead)
lxpolkit-git

The depencies of the normal gvfs package that I have installed are:
fuse
smbclient
avahi

Hope this helps
maces
Posts: 503
Joined: Sat Oct 25, 2008 6:04 pm
Contact:

Re: Help configuring GVFS with pcmanfm 0.9.2 - not authorized

Post by maces »

Thx :)

It's working here, too.

My system is an up2date Archlinux 64bit using the new pcmanfm RC1.

What I did:

adding the following to my "/home/maces/.xinitrc":

Code: Select all

if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
       eval "$(dbus-launch --sh-syntax --exit-with-session)"
fi
Without the "pcmanfm --daemon-mode"! this prevents starting of "startlxde" on my system.

I added "fuse" to my modules in "/etc/rc.conf":

Code: Select all

MODULES=(... fuse ...)
Then I installed this packages:
libfm-git
pcmanfm-git
gvfs (for network I think it's needed)
gvfs-smb (needed for samba)
gnome-disk-utility-git with gnome-keyring dependency removed (lxpolkit used instead)
lxpolkit-git

After this I got authorization problems. So I edited my "/usr/share/polkit-1/actions/org.freedesktop.udisks.policy":

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
 "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/PolicyKit/1.0/policyconfig.dtd">
<policyconfig>
  <vendor>The udisks Project</vendor>
  <vendor_url>http://udisks.freedesktop.org/</vendor_url>
  <icon_name>drive-removable-media</icon_name>

  <action id="org.freedesktop.udisks.filesystem-mount">
    <description>Mount a device</description>
    <description xml:lang="da">Montér en enhed</description>
    <message>Authentication is required to mount the device</message>
    <message xml:lang="da">Autorisering er påkrævet for at montere et fil system</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.filesystem-mount-system-internal">
    <description>Mount a system-internal device</description>
    <description xml:lang="da">Montér en intern enhed</description>
    <message>Authentication is required to mount the device</message>
    <message xml:lang="da">Autorisering er påkrævet for at montere et fil system</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.filesystem-check">
    <description>Check file system on a device</description>
    <description xml:lang="da">Check fil system for en enhed</description>
    <message>Authentication is required to check the file system on the device</message>
    <message xml:lang="da">Autorisering er påkrævet for at checke fil systemet på en enhed</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.filesystem-check-system-internal">
    <description>Check file system of a system-internal device</description>
    <description xml:lang="da">Check fil system for en intern enhed</description>
    <message>Authentication is required to check the file system on the device</message>
    <message xml:lang="da">Autorisering er påkrævet for at checke fil systemet på en enhed</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.filesystem-unmount-others">
    <description>Unmount a device mounted by another user</description>
    <description xml:lang="da">Afmontér en enhed monteret af en anden bruger</description>
    <message>Authentication is required to unmount devices mounted by another user</message>
    <message xml:lang="da">Autorisering er påkrævet for at afmontere enheder monteret af en anden bruger</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.filesystem-lsof">
    <description>List open files</description>
    <description xml:lang="da">Vis åbne filer</description>
    <message>Authentication is required to list open files on a mounted file system</message>
    <message xml:lang="da">Autorisering er påkrævet for at liste åbne filer</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.filesystem-lsof-system-internal">
    <description>List open files on a system-internal device</description>
    <description xml:lang="da">Vis åbne filer på en intern enhed</description>
    <message>Authentication is required to list open files on a mounted file system</message>
    <message xml:lang="da">Autorisering er påkrævet for at liste åbne filer</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.drive-eject">
    <description>Eject media from a device</description>
    <message>Authentication is required to eject media from the device</message>
    <message xml:lang="da">Autorisering er påkrævet for at skubbe medie ud af en enhed</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.drive-detach">
    <description>Detach a drive</description>
    <message>Authentication is required to detach the drive</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.change">
    <description>Modify a device</description>
    <description xml:lang="da">Modificér en enhed</description>
    <message>Authentication is required to modify the device</message>
    <message xml:lang="da">Autorisering er påkrævet for at ændre en enhed</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.change-system-internal">
    <description>Modify a system-internal device</description>
    <description xml:lang="da">Modificér en intern enhed</description>
    <message>Authentication is required to modify the device</message>
    <message xml:lang="da">Autorisering er påkrævet for at ændre en enhed</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.drive-ata-smart-refresh">
    <description>Refresh ATA SMART data</description>
    <description xml:lang="da">Læs ATA SMART data</description>
    <message>Authentication is required to refresh ATA SMART data</message>
    <message xml:lang="da">Autorisering er påkrævet for at læse ATA SMART data</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.drive-ata-smart-selftest">
    <description>Run ATA SMART Self Tests</description>
    <description xml:lang="da">Kør ATA SMART selv checks</description>
    <message>Authentication is required to run ATA SMART self tests</message>
    <message xml:lang="da">Autorisering er påkrævet for at køre ATA SMART selvcheck</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.drive-ata-smart-retrieve-historical-data">
    <description>Retrieve historical ATA SMART data</description>
    <description xml:lang="da">Hent historisk ATA SMART data</description>
    <message>Authentication is required to retrieve historical ATA SMART data</message>
    <message xml:lang="da">Autorisering er påkrævet for at hente historisk ATA SMART data</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.luks-unlock">
    <description>Unlock an encrypted device</description>
    <description xml:lang="da">Åbn en krypteret enhed</description>
    <message>Authentication is required to unlock an encrypted device</message>
    <message xml:lang="da">Autorisering er påkrævet for at åbne en krypteret enhed</message>
    <defaults>
      <allow_any>yes</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.luks-lock-others">
    <description>Lock an encrypted device unlocked by another user</description>
    <description xml:lang="da">Lås en krypteret enhed åbnet af en anden bruger</description>
    <message>Authentication is required to lock an encrypted device unlocked by another user</message>
    <message xml:lang="da">Autorisering er påkrævet for at låse en krypteret enhed åbnet af en anden bruger</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.linux-md">
    <description>Configure Linux Software RAID</description>
    <description xml:lang="da">Konfigurér Software RAID</description>
    <message>Authentication is required to configure Linux Software RAID devices</message>
    <message xml:lang="da">Autorisering er påkrævet for at konfigurere RAID enheder</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.linux-lvm2">
    <description>Configure Linux LVM2</description>
    <message>Authentication is required to configure Linux LVM2</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.cancel-job-others">
    <description>Cancel a job initiated by another user</description>
    <description xml:lang="da">Afbryd job påbegyndt af en anden bruger</description>
    <message>Authentication is required to cancel a job initiated by another user</message>
    <message xml:lang="da">Autorisering er påkrævet for at afbryde et job påbegyndt af en anden bruger</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.inhibit-polling">
    <description>Inhibit media detection</description>
    <description xml:lang="da">Undertryk medie detektion</description>
    <message>Authentication is required to inhibit media detection</message>
    <message xml:lang="da">Autorisering er påkrævet for at undertrykke medie detektion</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

  <action id="org.freedesktop.udisks.drive-set-spindown">
    <description>Set drive spindown timeout</description>
    <message>Authentication is required to configure drive spindown timeout</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

</policyconfig>
I currently didn't reviewed it according to security.

Well, I hope this helps a bit. Please comment if you think something is wrong.

maces
knedlyk
Posts: 18
Joined: Thu Dec 11, 2008 11:37 am
Location: L'viv, Ukraine

Re: Help configuring GVFS with pcmanfm 0.9.2 - not authorized

Post by knedlyk »

Adding string
exec ck-launch-session dbus-launch startlxde
to .xinitrc helped me.
Jabber: echo zdstsz@xwdjf.enw | tr zuenstfxjwd ymcorplgima
MrMagne
Posts: 1
Joined: Wed Jul 14, 2010 11:14 am

Re: Help configuring GVFS with pcmanfm 0.9.2 - not authorized

Post by MrMagne »

Hello
maces wrote: adding the following to my "/home/maces/.xinitrc":

Code: Select all

if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
       eval "$(dbus-launch --sh-syntax --exit-with-session)"
fi
Worked for me too.

But what is strange is my "/usr/share/polkit-1/actions/org.freedesktop.udisks.policy" file. If I keep

Code: Select all

      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
settings, I can mount using palimpsest, but I still have an error message using pcmanfm (pcmanfm 0.9.7 as provided by pcmanfm-git in arclinux/AUR). If I put everything to yes it works with pcmanfm, so I think there is something wrong in the way pcmanfm does this, no ?

btw, if I run 'sudo pcmanfm' I have "DEBUG: FmJob error: No such file or directory", and pcmanfm doesn't launch although sudo is well configured...

to sum-up I'm almost there in my attempt to have a Hal-free archlinux ;)
Locked