web-greeter
web-greeter copied to clipboard
localStorage not persistent
Environment
$ web-greeter --version
3.5.2
Bug description
Hello, I wanted to create an issue for this as it took me quite some time to find a Reddit thread that describes it:
https://www.reddit.com/r/linuxquestions/comments/12uhsyr/comment/jh8yi8o/?context=3
... it seems to be that storage sessions are not saved before nody-greeter/web-greeter closes; they work until the program is closed by lightdm. I didn't find a right solution back then so this will have to wait unless someone else tries to fix it.
I think this should be tracked as an issue so attempts to fix it can be made.
My issue when writing a theme was that right before running lightdm.start_session(id)
I try to cache the last logged in user this way:
localStorage.setItem("LAST_USER", lightdm.authentication_user);
However, it doesn't appear to be cached on the next reboot. The reddit thread describes this same issue as far as I understand.
Steps to reproduce
In a web-greeter theme:
- try to cache last user before starting session:
-
localStorage.setItem("LAST_USER", lightdm.authentication_user)
- try to retrieve cached user next time using the theme:
-
localStorage.getItem("LAST_USER")
Note: In some cases it seems like the storage works, but trying to setItem()
right before starting the session, for me that's how it consistently fails.
Expected behavior
When rebooting, key "LAST_USER"
is found on localStorage
Now saw this issue in nody-greeter: https://github.com/JezerM/nody-greeter/issues/41
Describes the same bug
Hi, @tuurep. I made a PR that tries to solve this issue in web-greeter, I'd like you to test it and tell me if it works :'D
I made a PR in LightDM that would finally fix this issue without any drawback seen in #76, as this would allow a graceful finish of the browser (hence saving the localStorage on disk). So, just wait~
Sounds great, thank you!