plasma-org.kde.plasma.desktop-appletsrc is overwritten during login/boot

I’m trying to save/restore the icon position, so I noticed that it seems to be stored in ~/.config/plasma-org.kde.plasma.desktop-appletsrc. However, if I kill plasmashell, modify the file, and then reboot, something regenerates it, blowing away my changes. What is doing that and where is the recovery information coming from?

If I make a change that it shouldn’t be noticed, like just changing an icon name, it gets reverted by the regeneration. So it’s not simply applying rules, but appears to actually have a backup copy of the content somewhere.

I even tried to wipe out ~/.cache and ~/.config/Trolltech.conf but it STILL gets regenerated.

In most cases of generated files, the file contains a comment at the top indicating where the actual definitive file is, but not in this case. There is no warning not to modify it nor hint where the generation is pulling the recovery content.:frowning:

KDE Plasma Version 5.8.7
KDE Framework Version 5.32.0
Qt Version 5.6.2
Kernel Version 4.4120-45-default

Well, ~/.config/Trolltech.conf is Qt4’s config file and definitely unrelated to your problem.

AFAIK only plasmashell should write (or regenerate) ~/.config/plasma-org.kde.plasma.desktop-appletsrc, and I’m not aware of any “backup copy” that it may use as template.

Are you sure that plasmashell was not running anymore when you modified the file?
Better check with the system monitor or ps.

Does it also get recreated with the old values when you run plasmashell again, instead of rebooting?

If I make a change that it shouldn’t be noticed, like just changing an icon name, it gets reverted by the regeneration.

What exactly does “just changing an icon name” mean?
Maybe you are doing something wrong here.

Btw, in my experience, plasmashell “forgets” the icon (and widget) positions in case of a resolution change. That may play a role here, especially if you set a different resolution than the monitor’s native one in systemsettings5 (which will be applied during login).
Maybe try to delete ~/.local/share/kscreen/ to make sure the resolution is not changed.

Of course, one way to prevent changes to the file would be to remove the write permissions (or mark it as “immutable”). But then you cannot do other changes either, e.g. adding/removing widgets.