Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Oct 2008 08:30:09 +1300
From:      James Butler <sweetnavelorange@gmail.com>
To:        Manolis Kiagias <sonic2000gr@gmail.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Minor problems with Xfce
Message-ID:  <20081014083009.45d72f76@jamesb.kiwiplan.co.nz>
In-Reply-To: <48F32A5B.2010408@gmail.com>
References:  <f0dd9eb90810130253s3a130573lb827c5765954a4e0@mail.gmail.com> <48F32A5B.2010408@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Manolis Kiagias <sonic2000gr@gmail.com> wrote:
> James Butler wrote:
> > Greetings all,
> >
> > I'm using 7-stable on my Thinkpad X31, with Xfce recently (2 weeks
> > or so) installed from packages. I have two minor problems with
> > Xfce, at least one of which could be HAL/DBUS related - I'd
> > appreciate some advice to rule out misconfiguration on my part.
> >
> > Firstly, when I bring up the Xfce Exit dialog, the Restart and
> > Shutdown buttons are greyed out. I have read the Xfce FAQ on the
> > subject, which mentions that the session manager tries HAL shutdown
> > methods first, then falls back to sudo. I don't have sudo installed,
> > but I have both hald and dbus (system and session) running.
> >
> > Checking the xsession error log after an attempted Exit reveals:
> >
> > ** Message: xfsm-shutdown-helper.c:215: HAL not available or does
> > not permit to shutdown/reboot the computer, trying sudo fallback
> > instead.
> >
> > and (as expected):
> >
> > ** (xfce4-session:1066): WARNING **: sudo was not found. You will
> > not be able to shutdown your system from within Xfce
> >
> > Looking at xfsm-shutdown-helper.c I see that the session manager
> > probes HAL for shutdown support by trying a dummy method call:
> >
> > /* this is a simple trick to check whether we are allowed to
> >    * use the org.freedesktop.Hal.Device.SystemPowerManagement
> >    * interface without shutting down/rebooting now.
> >    */
> >   message = dbus_message_new_method_call ("org.freedesktop.Hal",
> >
> > "/org/freedesktop/Hal/devices/computer",
> >
> > "org.freedesktop.Hal.Device.SystemPowerManagement",
> >                                           "ThisMethodMustNotExistInHal");
> >
> > [snip]
> >
> > /* if we receive org.freedesktop.DBus.Error.UnknownMethod, then
> >    * we are allowed to shutdown/reboot the computer via HAL.
> >    */
> >   if (strcmp (error.name,
> > "org.freedesktop.DBus.Error.UnknownMethod") == 0)
> >
> > So out of curiosity I tried this manually and got the 'correct'
> > error:
> >
> > $ dbus-send --system --print-reply  --dest=org.freedesktop.Hal
> > /org/freedesktop/Hal/devices/computer
> > org.freedesktop.Hal.Device.SystemPowerManagement.ThisMethodMustNotExistInHal
> > Error org.freedesktop.DBus.Error.UnknownMethod: Method
> > "ThisMethodMustNotExistInHal" with signature "" on interface
> > "org.freedesktop.Hal.Device.SystemPowerManagement" doesn't exist
> >
> > Now I don't claim to understand much of this, so any help would be
> > greatly appreciated. I have provided the output of various commands
> > from the freebsd-gnome Bugging guide at
> > http://homepages.ihug.co.nz/~sweetnavelorange/.
> >
> > My other problem is possibly unrelated, but any actions I perform
> > which would remove or update icons on the desktop (deleting a file,
> > emptying Trash) don't take effect until xfdesktop is restarted or I
> > log out and then in. Any ideas? Notably, automatic detection and
> > mounting of USB drives, which seems to be a fragile area for many
> > HAL users, works perfectly for me.
> >
> > Thanks in advance,
> > -James Butler
> >   
> 
> Insert something like the following in your 
> /usr/local/etc/PolicyKit/PolicyKit.conf (between the <config> tags):
> 
>     <match action="org.freedesktop.hal.power-management.shutdown">
>        <match user="yourusername">
>           <return result="yes"/>
>        </match>
>     </match>
>     <match action="org.freedesktop.hal.power-management.reboot">
>        <match user="yourusername">
>           <return result="yes"/>
>        </match>
>     </match>

I don't have the machine on me just now, but I should mention I played
with this file and currently have (for testing purposes) something
permissive like:

<match action="org.freedesktop.hal.power-management.*">
    <return result="yes"/>
</match>

This allows me to shutdown the machine by "dbus-send"-ing the
appropriate message - doesn't help Xfce though. I may play with it some
more.

> 
> Have a look at /usr/local/share/PolicyKit/policy. Examine the
> contents of the files there to see possible actions.
> It may also help to have a look at this page, if you haven't already:
> 
> http://www.freebsd.org/gnome/docs/halfaq.html

Yes, I have read and re-read it :-)

> 
> I have some annoyances with XFCE myself, but I haven't bothered 
> seriously to fix them. I have the same no-icon-update problem on my 
> desktop. I keep pressing F5 as a workaround. Like in your case, USB 
> flash drive mounting works perfectly. Another thing that does not
> work for me, is clicking an http link in an app: it will not open
> firefox. Weird, as firefox is selected as the default / preferred
> browser.

I haven't tried this. Anyway, thanks for the hints.

-James Butler



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081014083009.45d72f76>