I’m new to openSUSE Tumbleweed (actually new to Linux in general, just run a few years ago Linux Mint with Cinnamon Desktop in virtual machine for a few weeks). I encountered some unexpected (?) behavior after “sudo zypper dup” and I’d like to understand if this is normal for Tumbleweed or if something is wrong with my setup.
A couple of settings were reset:
Logout/Restart wait time (had to manually edit /usr/share/plasma/look-and-feel/org.openSUSE.desktop/contents/logout/Logout.qml to restore it) (From Linux Mint I remember that I could activate SuperUser Mode graphically, so that I could simple edit the file without terminal, anything like that exist in KDE)
Lock screen wallpaper - changed back to the default
Natural scrolling (Invert scroll direction) - the checkbox unchecked itself
pointer speed changed back to default for both mouse and touchpad
All other Settings remained unchanged / as configured by me
My Questions are:
Is this normal behavior in Tumbleweed? that partial configuration resets are happening?
What causes selective settings to reset while others don’t? Is this related to KDE?
Are there ways to prevent this in future updates, or should I back up specific configuration files before running sudo zypper dup?
Aside from what @mhurron says, if you want to make changes to plasma themes you can copy the entire/usr/share/plasma/look-and-feel/*as your user to $HOME/.local/share/plasma/look-and-feel/ and edit those files. In that case the files don’t belong to a package, and will hence not be overwritten by some update. The other settings should be done from systemsettings.
Oh, and since you are new: don’t forget to Enjoy and have Fun.
All the setting were done from System Settings. As there was no setting for the duration Logout/Restart, only to turn it on and off, I googled and found that file /usr/share/plasma/look-and-feel/org.openSUSE.desktop/contents/logout/Logout.qml. Thanks for the copy tip I will use that. I also added the wallpaper in /usr/… so I guess that is the reason it was changed.
Is this the general behavior in Linux that everything outside Home folder can change with updates?
Some background ( this “plays” on any distro ):
Traditionally global configs were in /etc/, also the config files that would belong to packages. The move to /usr/etc/ for the defaults, /etc/ for sysadmin changes to the defaults, usually in a file in a /etc/*.d/ folder. So if you change things in f.e. your SSH config, the default is in /usr/etc/ssh.conf, but you want SSH to use f.e. key-authentication instead of password authentication, you set that in /etc/ssh.conf.d/key-auth-only.conf.
Sort of the same goes for $HOME: After reading the defaults ( f.e. theme ) the system reads your $HOME/.local/share/themes and picks that one as the only truth. Unless you as the user are making changes there, nothing happens on an upgrade.
Now, what happens if a package gets upgraded? Depending on the package build it may replace some folder and it’s content with the content of the new package. If that happens your desktop wallpaper put in /usr/share/wallpapers will be gone. If it is in /$HOME/local/share/wallpapers no package will touch it and no matter what upgrade happens, your wallpaper will stay the same.