On Thu, 14 Jan 2021 19:34:03 -0400
Jim via tde-devels <devels(a)trinitydesktop.org> wrote:
On Thu, Jan 14, 2021 at 16:17 (-0500), E. Liddell
wrote:
On Thu, 14 Jan 2021 11:39:42 -0400
Jim via tde-devels <devels(a)trinitydesktop.org> wrote:
> On Wed, Jan 13, 2021 at 19:00 (+0100), Slávek
Banko via tde-devels wrote:
>> On Wednesday 13 of January 2021 18:42:12
Jim via tde-devels wrote:
>>> On Wed, Jan 13, 2021 at 17:36 (+0100), Slávek Banko via tde-devels
>> wrote:
>>>> On Wednesday 13 of January 2021 16:49:00 Jim via tde-devels wrote:
>>>>> ADDITIONAL INFORMATION which may or may not help:
>>>>> When I start up kcontrol, the pane on the left which should have all
>>>>> sort of things (in an older version of TFE on another computer I
have
>>>>> "Appearance & Themes", "Desktop",
"Internet & Network", and so on)
>>>>> is empty. Â So, again, it can't find whatever it is looking for.
<snip>
>> Can you try it in a full TDE session?
> Yes, as described above, if by "full
session" we mean do both
> -> use tdm display manager
> and
> -> start TDE session
> then it works.
> Given my "essentially nil"
understanding of the code base, I don't
> know if I can be much help tracking this down, but if you want me to
> give something a try, just let me know.
If I try to bring up kcontrol when su'd to
root inside a konsole
window, I get a blank left panel in kcontrol and the following:
ryu ~ # kcontrol
[tdebuildsycoca] tdebuildsycoca running...
[2021/01/14 15:52:02.413] [dcopserver] DCOP Cleaning up dead connections.
[2021/01/14 15:52:02.451] [kcontrol] WARNING: No TDE menu group with
X-TDE-BaseGroup=settings found ! Defaulting to Settings/
The left panel is populated if I open kcontrol
from the command line as the
logged-in user, and the buildsycoca, DCOP, and warning messages are not printed.
So the problem is either something DCOPish, or
something to do with that
warning message. Probably.
Jim, can you test to see if you get the same
messages, so we can make sure
I'm not conflating two different problems?
Given that it works when I run from a "full TDE session", I am running
these commands from my trusty fvwm2 session, as started by xdm.
How exactly did you su to root? If I just
"su", /opt/trinity/bin is
in my PATH, whereas if I "sudo su" it is not. For the root output
below, I just did "su". And to start with a clean config, I did the
rm shown below
Normal procedure for me would be "su -". The - clears the environment,
if I recall correctly. I was just using root because that's the only other
full user I have set up on this machine, though.
root@rpi4-4:/scratch/tmp# kcontrol
/usr/bin/iceauth: creating new authority file /root/.ICEauthority
[tdebuildsycoca] tdebuildsycoca running...
[2021/01/14 19:31:17.736] [kcontrol] WARNING: No TDE menu group with
X-TDE-BaseGroup=settings found ! Defaulting to Settings/
And no info in the left pane.
Okay. So the warning message always shows up. I was able
to trace the warning into the source (for 14.0.8, because I already
had that on my machine and unpacked).
(Boring code stuff follows.)
The warning itself comes from KCGlobal::baseGroup() in
tdebase-trinity-14.0.8/kcontrol/kcontrol/global.cpp . The section it's
in has the following comment attached:
// Compatibility with old behaviour, in case of missing .directory files.
I have a feeling that that section of code should be choosing different
fallbacks. Execution is being gated into there if
KServiceGroup::baseGroup( _infocenter ? "info" : "settings" )
doesn't find a valid pointer (I think—my C++ isn't the greatest),
but trying to figure out how the relevant variables are initialized led
me down a rabbit hole in tdelibs that was beyond my ability to decode.
Conclusion: to fix this, either something has to be initialized before that
KServiceGroup::baseGroup call, or one of the fallbacks if it's uninitialized
needs to be handled in a way that makes sense for the case where the
user starting kcontrol is not the one running the main TDE session (if
there is a main TDE session).
Secondary conclusion: I can describe the problem, but not fix it. Sorry.
Slávek? What do you think?
E. Liddell