Bug 431453

Summary: Can't apply new themes anymore
Product: [Applications] systemsettings Reporter: Nate Graham <nate>
Component: kcm_sddmAssignee: David Redondo <kde>
Status: RESOLVED FIXED    
Severity: grave CC: kde, null, plasma-bugs-null
Priority: HI Keywords: regression
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Blank error message

Description Nate Graham 2021-01-11 17:31:58 UTC
Created attachment 134747 [details]
Blank error message

With the big new KCM rewrite, I can no longer apply new themes. This worked the first time I tested the KCM, but seems to have broken sometime between then and when it was merged.

When I select a different theme and click on the "Apply" button, I get a blank error InlineMessage at the top of the KCM, and the new theme is not applied. See attached screenshot. Nothing particularly relevant is printed to the console.
Comment 1 Nate Graham 2021-01-11 17:32:30 UTC
David, could you have a look? Thanks!
Comment 2 David Redondo 2021-01-12 08:31:01 UTC
I tested again  and it works but testing locally is a bit pelicular.

1. The usual kauth in a prefix things

2. Sddm uses config files in /etc and in /usr/lib but I am not sure what happens if sddm is also installed in a prefix. The kcm  uses cmake to set the paths 
https://invent.kde.org/plasma/sddm-kcm/-/blob/master/src/CMakeLists.txt#L1 which will set them to your prefix if you install it to your prefix. I lack context to why this was done.

3. The blank error message is not good, we should probably fallback to errorText() if errorString() is empty and always print errorText()
Comment 3 Nate Graham 2021-01-12 17:28:57 UTC
1. I copy my prefix kauth stuff to /

2. I don't have a local SDDM build in the prefix path
Comment 4 David Redondo 2021-01-12 18:06:32 UTC
That's why I am suspecting it is not working.
The kcm writes to the prefix (for example ~/kde/usr/etc/sddm.conf.d/) but your sddm reads only from (/etc/sddm.conf.d/)
Comment 5 Nate Graham 2021-01-12 21:12:21 UTC
FWIW I was able to apply new themes with the old KCM even installed to a prefix.
Comment 6 David Redondo 2021-01-13 07:58:44 UTC
(In reply to Nate Graham from comment #5)
> FWIW I was able to apply new themes with the old KCM even installed to a
> prefix.

Huh? The config file path generation and saving (via the helper) is the same as the old kcm. See the link above it uses CMAKE_INSTALL_FULL_SYSCONFDIR and on my machine this evaluates to a path in my prefix

One thing which then could be wrong is that we do not pass the correct arguments to the kauth helper, I will take another look
Comment 7 David Redondo 2021-01-13 09:38:58 UTC
I can repduce it but do not understand why it broke without touching the files
Comment 8 David Redondo 2021-01-13 12:41:14 UTC
Ok it worked for me, stopped working consistently (see above) and then I rebuild the kcm and kauth a bunch of times and it works again.

I tested in a fresh neon unstable vm and there it works too
Comment 9 Nate Graham 2021-02-16 15:10:44 UTC
Now that Plasma 5.21 is released, this is moot, since it works with released packages.