Encrypted HOME should be 'unlocked' at login before calling SetLanguage
Bug #957431 reported by
Gunnar Hjalmarsson
This bug affects 4 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Light Display Manager |
Triaged
|
Low
|
Unassigned | ||
lightdm (Ubuntu) |
Triaged
|
Low
|
Unassigned |
Bug Description
Apart from bug #952185, the language chooser on the lightdm-gtk-greeter does not work if you log in to a user with an encrypted HOME. The call for accountsservice's SetLanguage method happens before HOME is available, so it's rejected by SetLanguage.
It seems like HOME needs to be 'unlocked' earlier and/or the SetLanguage call postponed. That way the language chooser would work also with an encrypted HOME, and without a need to e.g. mess with a cache file.
Related branches
Changed in lightdm: | |
status: | New → Triaged |
Changed in lightdm (Ubuntu): | |
status: | New → Triaged |
Changed in lightdm: | |
importance: | Undecided → Low |
Changed in lightdm (Ubuntu): | |
importance: | Undecided → Low |
To post a comment you must log in.
In an attempt to make some progress, I tried to move the spot in the program where the call for accountsservice's SetLanguage method takes place. I seeked a spot after an eCryptfs protected HOME has been decrypted, but before PAM reads ~/.pam_environment and sets the locale environment accordingly. Unfortunately such a spot does not seem to exist.
The decryption seems to be completed only in the end of session_run(), but at that point it's too late for PAM, even if you take into account the proposed fix of bug #952185 that's currently being considered. Consequently, just moving the SetLanguage call is not sufficient to fix this bug.