Bug 1155898

Summary: sddm does not honor defaults
Product: [Fedora] Fedora Reporter: Ed Greshko <ed.greshko>
Component: sddmAssignee: Rex Dieter <rdieter>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 21CC: dvratil, jgrulich, kevin, ltinkl, mbriza, rdieter, sudhir
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: sddm-0.10.0-2.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-11-13 18:21:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Sample config file generated by sddm-0.10.0-1.fc22.x86_64 none

Description Ed Greshko 2014-10-23 06:42:19 UTC
Description of problem: This is on F21-Beta TC4 net install.  When installed there is no configuration file /etc/sddm.conf.

According to the man page for sddm.conf 

       RememberLastUser=
              If this flag is true, LastUser value will updated on  every  suc‐
              cessfull  login,  if  false  last  user  value  wont  be updated.
              Default value is true.

       RememberLastSession=
              If this flag is true, LastSession value  will  updated  on  every
              successfull  login,  if false last session value wont be updated.
              Default value is true.

But that isn't the case.  I need to create a /etc/sddm.conf with the following to get the desired behavior.

[General]
Numlock=on
[Users]
RememberLastUser=true
RememberLastSession=true


Version-Release number of selected component (if applicable): 

sddm-0.9.0-2.20141007git6a28c29b.fc21.x86_64


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Ed Greshko 2014-10-26 13:28:04 UTC
I have recently installed the KDE environment from the Beta RC1 net install of F21.  Now, it seems, the /etc/sddm.conf has no effect even though the sddm version is the same.

The last user is not remembered and neither is the Last Session.  One always has to select "KDE plasma workspace" as "KDE plasma workspace (failsafe session) is always at the top.

Comment 2 Sudhir Khanger 2014-10-26 14:06:02 UTC
It remembered last user on an older install but it doesn't on a newer Fedora 20 install. I have also noticed that SDDM picks up the first in list for the default session and hence "KDE plasma workspace (failsafe session)". I don't have this problem after I installed Plasma 5.

Comment 3 Ed Greshko 2014-10-26 14:22:38 UTC
Are you suggesting the fix to be "install Plasma 5"?

Comment 4 Sudhir Khanger 2014-10-26 14:56:26 UTC
Not suggesting anything. Version 0.10 has been available for rawhide maybe that solves some of your annoyances.

Comment 5 Ed Greshko 2014-10-26 15:03:25 UTC
Maybe 0.10 will fix some of my issues.  I'll have to give it a try.  But, since there is a freeze it won't get into F21 right?  Not to mention that sddm seems ill suited for a multi-display environment.  At least kdm had configuration options to place the greeter screen on a given screen.  No such ability in sddm.

Comment 6 Kevin Kofler 2014-10-26 16:46:25 UTC
There is a freeze exception request filed for 0.10 because it fixes some security issues (and a bunch of other bugs), it has been accepted, but it's not a blocker (and it is a significant change), so we are not entirely sure that it will go into the Beta. It will only be allowed into the stable repository before the Beta if it does enter the Beta, otherwise it will get pushed after the Beta gets released.

Comment 7 Ed Greshko 2014-10-26 22:46:33 UTC
I installed sddm-0.10.0-1.fc22.x86_64 from koji and have an /etc/sddm.conf of

[General]
AutoRelogin=true
AutoUser=egreshko
CursorTheme=#kde_legacy#
HaltCommand=
MaximumUid=65000
MinimumUid=1000
Numlock=on
RebootCommand=

[Users]
RememberLastSession=true
RememberLastUser=true

Nothing is being honored...

I really would be hesitant to release sddm in its current broken state no matter how pretty it looks or the fact that it is "under active development".

Comment 8 Ed Greshko 2014-10-26 22:47:39 UTC
Oh, BTW, the sddm.conf was written by the System Settings GUI of KDE.

Comment 9 Kevin Kofler 2014-10-27 01:03:10 UTC
It's unfortunately expected that a config file from SDDM 0.9 no longer works, 0.10 uses completely different setting keys.

Comment 10 Ed Greshko 2014-10-27 01:16:35 UTC
The man page with the sddm-0.10.0-1.fc22.x86_64 is exactly the same as the previous man page.  Do you have a pointer to the new format?

Comment 11 Ed Greshko 2014-10-27 01:29:57 UTC
Oh....  FWIW, I found a suggestion to use "sddm --example-config" to get a sample config file.  I did so, and it seems to be no different than 0.9.  I'll attach it for completeness.

Comment 12 Ed Greshko 2014-10-27 01:34:15 UTC
Created attachment 950874 [details]
Sample config file generated by sddm-0.10.0-1.fc22.x86_64

I can't see any difference between a 0.9 and 0.1 config file...

Comment 13 Kevin Kofler 2014-10-27 02:15:41 UTC
Compare the group and key names:

> [General]
> AutoRelogin=true

This is now [Autologin] Relogin=.

> AutoUser=egreshko

This is now [Autologin] User=.

> CursorTheme=#kde_legacy#

This is now under [Theme].

> HaltCommand=

This one is still valid, but sddm --example-config is also outputting this setting, so either it's the default anyway or it's picking up your setting just fine.

> MaximumUid=65000
> MinimumUid=1000

These two are now under [Users].

> Numlock=on
> RebootCommand=

These two are still valid, but sddm --example-config is also outputting those settings, so either they're the default anyway or it's picking up your settings just fine.

> [Users]
> RememberLastSession=true
> RememberLastUser=true

These two are still valid, but sddm --example-config is also outputting those settings, so either they're the default anyway or it's picking up your settings just fine.

Comment 14 Ed Greshko 2014-10-27 02:29:50 UTC
OK....  I misunderstood your comment about "keys".  So, I just took the output of the --example-config and copied it to /etc/sddm.conf.  No change....  

The RememberLastSession and RememberLastUser are having no effect.

Comment 15 Martin Bříza 2014-10-27 12:16:51 UTC
--example-config prints the complete current configuration, that is the defaults with what /etc/sddm.conf overrides.

Regarding the reported problem with remembering of previous sessions and users, it just works for me. Currently, I'm testing if there's any circumstance to cause the behavior you experience yet I'm not really successful.

It's good to mention though, that we moved the LastUser and LastSession key/values to /var/lib/sddm/state.conf to keep it out of /etc (and prevent sddm from overwriting its own config itself).

I'm sorry for not being present on IRC over the weekend, I was out of town. This week, the situation should be much better (especially on Wednesday and further on).

I hope we can solve this ASAP.

Comment 16 Ed Greshko 2014-10-27 13:31:16 UTC
Any suggestions on what needs to be done to determine why it works for you and not for me?  FWIW, I have no /var/lib/sddm directory. Also, I don't think should make any difference but I am running F21 in a Vbox VM.

Comment 17 Rex Dieter 2014-10-27 13:39:16 UTC
Oops, /var/lib/sddm not existing would indeed be a cause for many of the symptoms described.

Comment 18 Ed Greshko 2014-10-27 13:44:28 UTC
What is responsible for its creation?  

[egreshko@localhost ~]$ rpm2cpio sddm-0.10.0-1.fc22.x86_64.rpm | cpio -it | grep var
2105 blocks
./var/run/sddm

seems to indicate it isn't part of the sddm package.

Comment 19 Sudhir Khanger 2014-10-27 13:45:58 UTC
I created both /var/lib/sddm and state.conf. I used RememberLastSession=true and RememberLastUser=true in it but it still doesn't do anything.

Comment 20 Ed Greshko 2014-10-27 13:54:04 UTC
OK.....  I created the directory /var/lib/sddm.  I also have a /etc/sddm.conf  I did this via a ssh session.

Then I logged in and logged out.  And the RememberLastSession and RememberLastUser now are functioning as expected.

So.....the question becomes why didn't I have a /var/lib/sddm directory?

Comment 21 Ed Greshko 2014-10-27 13:54:49 UTC
Sorry, forgot to mention that the login/logout then produced a /var/lib/sddm/state.conf

Comment 22 Rex Dieter 2014-10-27 14:04:25 UTC
/var/lib/sddm not existing is a packaging bug, I'm fixing it now (it has to be user.group  sddm.sddm)

Comment 23 Sudhir Khanger 2014-10-27 14:11:29 UTC
Yep, creating /var/lib/sddm solves the problem.

Comment 24 Ed Greshko 2014-10-27 14:24:11 UTC
Great....  Glad we got that sorted out.  Now, if only sddm could have as good a memory as kdm and remember the last session for each user and not only the last session for the last user.

Comment 25 Rex Dieter 2014-10-27 14:25:30 UTC
Once sddm supports accountssservice, it will (not implemented yet)

Comment 26 Fedora Update System 2014-10-27 16:11:32 UTC
sddm-0.10.0-2.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/sddm-0.10.0-2.fc21

Comment 27 Fedora Update System 2014-10-27 16:12:37 UTC
sddm-0.10.0-2.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/sddm-0.10.0-2.fc20

Comment 28 Ed Greshko 2014-10-27 22:19:14 UTC
(In reply to Rex Dieter from comment #25)
> Once sddm supports accountssservice, it will (not implemented yet)

Good to know....  What other features are planned, but not there yet?  I wonder how sddm works in a multi-display environment.  With kdm I make use of the GreeterScreen parameter in kdmrc to put the greeter where it is wanted.

Both of these features would be key for acceptance of sddm for several of my clients.

Comment 29 Fedora Update System 2014-10-28 06:41:14 UTC
Package sddm-0.10.0-2.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing sddm-0.10.0-2.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-13756/sddm-0.10.0-2.fc20
then log in and leave karma (feedback).

Comment 30 Fedora Update System 2014-11-13 18:21:03 UTC
sddm-0.10.0-2.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 31 Fedora Update System 2014-11-13 18:22:56 UTC
sddm-0.10.0-2.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.