FS#50205 - [sddm] 5.7.2-1: Impossible change user account avatar in login manager (SDDM)
Attached to Project:
Arch Linux
Opened by Strangiato (Strangiato) - Saturday, 30 July 2016, 17:37 GMT
Last edited by Doug Newgard (Scimmia) - Tuesday, 13 February 2018, 14:00 GMT
Opened by Strangiato (Strangiato) - Saturday, 30 July 2016, 17:37 GMT
Last edited by Doug Newgard (Scimmia) - Tuesday, 13 February 2018, 14:00 GMT
|
Details
Description: Change user account avatar in SDDM never worked
on my system.
This bug affects Antergos and Manjaro too, two Arch-based distros. I think this is not an upstream bug because change user account avatar works correctly on other linux distros (OpenSuse, Kubuntu and Sparky). Additional info: package version: 5.7.2-1 Someone from kde bug tracker said this can be an home permission issue https://bugs.kde.org/show_bug.cgi?id=361460 Steps to reproduce: Steps to reproduce: 1. open kde settings, open "Account details", select "User manager" on left side 2. select your user account, click on your avatar and select "load from file..." 3. choose any image file to use as your new avatar 4. apply the change and logout from your user session Result: previous avatar is still active in SDDM login screen |
This task depends upon
Closed by Doug Newgard (Scimmia)
Tuesday, 13 February 2018, 14:00 GMT
Reason for closing: Fixed
Additional comments about closing: plasma 5.12
Tuesday, 13 February 2018, 14:00 GMT
Reason for closing: Fixed
Additional comments about closing: plasma 5.12
I think there are currently some problems handling the avatars. First of all, if changing the avatar using the kde user_manager, it will place four files in the filesystem: ~/.face and a symbolic link .face.icon on this file. According to https://wiki.archlinux.org/index.php/SDDM#Changing_your_avatar that is the first fault since sddm cannot read avatars which are symlinks. Even if I place a real file .face.icon in $HOME with the above mentioned permission, it does not work.
Then two more files named <username> are placed into /var/lib/AccountsService/icons and /var/lib/AccountsService/users. The files in /var/lib/AccountsService/icons do not match the sddm rules since they are malformed names (<username> instead of <username>.face.pic). If you change the filename to that what sddm expects and set the right path for "FacesDir" in the "[Theme]"-section of the sddm configuration, then it works.
After all, if you delete an avatar using the kde user_manager, then only ~/.face will be deleted and a broken link ~/.face.icon will be left, and the files in /var/lib/AccountsService/ remains untouched. In result, in kde systemsettings/user_manager the last avatar ist still visible.
The only solution that works is in my exerperience to place a file <username>.face.pic in /usr/share/sddm/faces/. But for that you need root privileges and cannot be done by an ordinary user.
These maybe all upstream bugs, but in result, the whole concept lacks in many points.
Anyway, this isn't something that can (or should) be fixed on the packaging side. Next SDDM release will have accountsservice support, so all these issues should be solved.
cd /usr/share/sddm/faces/
sudo ln -s /home/[user]/.face.icon [user].face.icon
And that works!!!
ps. i whose tried solution with read permissio - this dont work!