This is not a "How do I...?" but a "Why did it happen?" question.

I use Red Hat 9 but I don't use gnome because it runs too slowly on my legacy machine. When I need a gui (which is not often), I use fvwm as my window manager and xfm as my file manager. But I do use some gnome applications, particularly the very nice help browser yelp. I noticed that yelp was crashing with the message "Failure to open yelp-base" when I launched it from the xfm applications window.

Some experiments showed that it depended entirely on how xfm itself was started. Launch xfm from an xterm or from the window manager's menu and xfm can then launch yelp. Launch it from the X startup file (.xinitrc or .Xclients) and it can't. Other gnome applications like gnumeric are not affected.

It isn't a permissions thing because the same pattern shows up consistently when I do it as root. And a ps -aux listing shows xfm running under the same name, regardless of how it was launched.

Of course the practical solution is obvious - just don't launch xfm from .Xclients! But I want to know why it happens. I love Linux because it's so logical and easy to understand (unlike another system that I could name) but I can't find a logical explanation for this. I've tried Google and other people seem to have had the same problem but I haven't found an answer.