At this point I believe the reason I don't see those HPLIP messages when I start
3.5.10 is 3.5.10 is not fully xdg compliant. If I'm wrong then I have no other
explanation why I never see those messages in 3.5.10. That I was seeing the messages in
Trinity and not in 3.5.10 was a red herring.
Yet Trinity is not fully compliant either. :(
Test Results:
In my 3.5.10 system, with my testing account, I removed the hplip.desktop file from
~/.config/autostart. I started 3.5.10 and there were no messages about HPLIP.
I have a second KDEDIR directory. I purposely assigned 700 permissions to that directory
to prevent any *.desktop files there from overriding KDE defaults. Again no HPLIP
messages.
Yet the service does not try to run in my 3.5.10 system. What did I do long ago in 3.5.10
to prevent HPLIP from starting?
Maybe nothing?
After much testing and web searching I started to wonder whether the original KDE 3.5.10
is broken with respect to xdg autostart requirements. Not a far stretch to believe since
we have seen that 3.5.10 does not recognize or honor the ~/.config/autostart directory.
Trinity is almost fully xdg compliant but not quite. I see the HPLIP messages because
Trinity is correctly reading the contents of /etc/xdg/autostart.
Is Trinity recognizing the ~/.config/autostart directory? Yes. In the past I used the
~/.config directory for non-KDE apps. Once in a while I run tests in Xfce. Xfce does honor
the autostart directory. Trinity does too. I know this because when I start Trinity for
the first time with no kde profile, a new profile gets created. My conky display starts.
The only place Trinity can find that directive is the ~/.config/autostart directory.
I'm concluding that Trinity honors the ~/.config/autostart directory.
But does not recognize exceptions.
When I run Trinity and I have the ~/.config/autostart/hplip-systray.desktop file set to
Hidden=True, I still see the HPLIP messages in the log. This seems to be a bug with
respect to full xdg autostart compliance.
Initially I thought the Hidden=true directive in ~/.config/autostart/hplip.desktop only
hides the tray icon and does not necessarily stop the service from trying to run. But that
is not the effect I see in Xfce. When I set Hidden=False in the
~/.config/autostart/hplip-systray.desktop file, I see the same HPLIP messages in the log.
When I set Hidden=True I no longer see the HPLIP messages. Thus the file in
~/.config/autostart fully controls whether the service in /etc/xdg/autostart actually
starts.
As another test, in 3.5.10, I copied the /etc/xdg/autostart/hplip-systray.desktop file to
~/.config/autostart. No related messages found in the log. I exited KDE and moved the file
to ~/.kde/Autostart. I then saw the same messages in the log.
SUMMARY: 3.5.10 is not fully xdg compliant and that is why I see no related messages.
Trinity is mostly xdg compliant and that is why I see the messages in the log. Yet for
some reason Trinity is not honoring the Hidden=True directive in the
~/.config/autostart/hplip-systray.desktop file and I still see the HPLIP messages when I
should not.
Xfce does this as expected. Perhaps the Xfce code might help with getting Trinity fully
xdg compliant. I have the source code here. Tell me what to look for and I can forward
appropriate snippets.