Bug 423130 - Wallpaper settings lost on plasmashell restart
Summary: Wallpaper settings lost on plasmashell restart
Status: RESOLVED DOWNSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: Image Wallpaper (show other bugs)
Version: master
Platform: Other Linux
: NOR normal
Target Milestone: 1.0
Assignee: Marco Martin
URL:
Keywords: regression
: 423433 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-06-18 04:53 UTC by Luca Beltrame
Modified: 2020-08-07 18:01 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Luca Beltrame 2020-06-18 04:53:33 UTC
SUMMARY

In current Plasma master, changing the wallpaper will only work as long as plasmashell is running. Once it is restarted, it will fall back to the default wallpaper.

STEPS TO REPRODUCE
1. Change wallpaper
2. Restart plasmashell (kquitapp5 plasmashell && plasmashell)

OBSERVED RESULT

Wallpaper is set to default.

EXPECTED RESULT

User-selected wallpaper is shown.

SOFTWARE/OS VERSIONS

KDE Plasma Version: Current git master
KDE Frameworks Version: Current git master
Qt Version: 5.15.0

ADDITIONAL INFORMATION

I'm not sure if it is noise or not, but the following is printed when applying settings in the dialog:

file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:176:13: Unable to assign [undefined] to int
Comment 1 Ahmad Samir 2020-06-19 12:37:03 UTC
Debugging with einar77 and DavidRedondo on IRC, we found that this commit is the culprit: https://invent.kde.org/plasma/plasma-workspace/-/commit/b707970879f091d4ba356bcf909a7f4c8c3b4422

specifically this part:
-      <default></default>
+      <default>preferred://wallpaperlocations</default>

reverting it fixes the issue.
Comment 2 Ahmad Samir 2020-06-19 12:46:33 UTC
Further suggestions from DavidRedondo, changing that to an actual path on the local file system works too.
Comment 3 David Redondo 2020-06-19 12:52:51 UTC
That url will trigger 

 m_slidePaths << QStandardPaths::locateAll(QStandardPaths::GenericDataLocation,QStringLiteral("wallpapers"), QStandardPaths::LocateDirectory);
m_slidePaths.removeAll(path);

But I don't know why that breaks stuff
Comment 4 Ahmad Samir 2020-06-19 13:37:42 UTC
It seems that after editing the relevant config.xml file, the bug is "fixe"; as in if I put "<default>preferred://wallpaperlocations</default>" back, changing the wallpaper still works...
Comment 5 Nate Graham 2020-06-19 17:10:02 UTC
Cannot reproduce with current git master, FWIW.
Comment 6 Luca Beltrame 2020-06-19 21:01:31 UTC
Well, after a few rounds of debugging with fvogt on IRC (he did most of the work ;) it turns out that it's in fact, an RPM (the package manager) bug!

For those ending up here from search engines:

remove /usr/share/plasma/wallpapers/org.kde.slideshow/contents/config/main.xml and reinstall plasma5-workspace.
Comment 7 Ahmad Samir 2020-08-07 18:01:47 UTC
*** Bug 423433 has been marked as a duplicate of this bug. ***