Description of problem:
evolution --force-shutdown requires display
This is not very helpful when trying to "kill evolution" from a console or a
remote machine (e.g. as root).
# evolution --force-shutdown
cannot open display:
Run 'evolution --help' to see a full list of available command line options.
I encountered this issue, when the desktop of a machine had become
non-responsive because evolution had "gone-though" (evolution race, 100% cpu
load - hogging all memory) and I had tried to kill this racing evolution being
logged in as root from a remote machine.
Version-Release number of selected component (if applicable):
This is probably because Evolution first passes its command-line arguments to
gnome_program_init() (in libgnomeui) before taking action on them. Not really
sure how to get around this within Evolution itself.
The --force-shutdown option simply invokes '/usr/libexec/evolution/2.x/killev',
which does not require a display. Is that a sufficient workaround to close this
bug, or should I forward this to the upstream developers?
(In reply to comment #1)
> Is that a sufficient workaround to close this
> bug, or should I forward this to the upstream developers?
Well, IMO, this is design flaw in evolution, which should be addressed upstream.
Hmm, I can successfully ask Evolution for --help or --version without requiring
a display, and those requests flow through gnome_program_init() as well. I'll
take another look at this.
I think, in this particular case, we can safely skip gnome_program_init call and
look into parameters ourself, so no such thing like display will be required.
I took a closer look at this.
"evolution --force-shutdown" simply calls /usr/libexec/evolution/2.12/killev,
and that program does not require a display. So you can call killev directly
from a console or remote machine. I think this is an acceptable workaround and
it's not worth adding special logic to Evolution's option parsing just for this.
Closing as WONTFIX.
(In reply to comment #5)
> I took a closer look at this.
> "evolution --force-shutdown" simply calls /usr/libexec/evolution/2.12/killev,
> and that program does not require a display.
I don't know what you did, and if you fixed this for FC8, but it definitely
doesn't work on FC7.
"it" == invoking "evolution --force-shutdown" from a console (without DISPLAY).
Ralf, Matthew suggested a workaround for this, which is 'don't run evolution
--force-shutdown when you need to kill evolution, but run
/usr/libexec/evolution/2.12/killev on F8 instead'. Obviously, 2.12 is a current
version of evolution, which on F7 is 2.11 (check your /usr/libexec/evolution
directory for proper version number).
(In reply to comment #9)
> Ralf, Matthew suggested a workaround for this, which is 'don't run evolution
> --force-shutdown when you need to kill evolution, but run
> /usr/libexec/evolution/2.12/killev on F8 instead'.
The issue here isn't finding a workaround, the issue is "evolution --shutdown"
to being non-functional (A bug in evolution).
=> The solution is not pointing out a work-around, the point is fixing
"the application evolution" and to not shipping a broken application.
> Obviously, 2.12 is a current
> version of evolution, which on F7 is 2.11 (check your /usr/libexec/evolution
> directory for proper version number).
# rpm -q evolution
Closing again as WONTFIX since upstream indicated they're not interested in
fixing this either. If you still feel this issue has not been addressed
properly, please take it up with FESCo.
Thanks you very much for ignoring the brokenness and lack of usability of
evolution - It has once more been a pleasure being confronted with the warm
welcome and attitude of collaboration Redhat employers in Fedora are famous for.