Commit Graph

189 Commits

Author SHA1 Message Date
Kevin Kofler
90a25fdc62 displaymanager: Disable basic setup by default.
Add a "basicSetup" boolean setting and default to leaving this kind of
setup operations to the distribution packages (i.e., to
"basicSetup: false").
2014-12-01 03:14:33 +01:00
Kevin Kofler
95e39e05fa displaymanager: Use libcalamares.utils.debug instead of print.
Use libcalamares.utils.debug instead of print to output a debugging
message during SDDM autologin setup.
2014-12-01 03:03:20 +01:00
Kevin Kofler
524bcc15ea displaymanager: Fix default session setup for GDM.
The default session setting in GDM is per user. Therefore, it is not of
much use to set it for the gdm user. (Nobody will log in as "gdm".)
Unfortunately, there seems to be no systemwide setting for the default
session, the AccountsService provides no such setting, and GDM just
hardcodes the fallback to use if it is not set in the AccountsService.
(GDM first tries "gnome", and if that is not available, it picks the
first session in the alphabet.)

Therefore, the best we can do right now is to set the default session
for the autoLoginUser. This is the case where it matters the most
anyway. We would also need the username of a non-autologin user in the
global storage to do any better.
2014-12-01 03:01:39 +01:00
Kevin Kofler
5e14080891 displaymanager: Remove lightdm gdmflexiserver hack.
Remove the hack that symlinks /usr/lib/lightdm/lightdm/gdmflexiserver as
/usr/bin/gdmflexiserver.

Upstream LightDM removed their gdmflexiserver implementation in 1.9.4 in
2013:
http://bazaar.launchpad.net/~lightdm-team/lightdm/trunk/revision/1841

In addition, LightDM was already adding the path containing its
gdmflexiserver implementation to PATH, so there was no use symlinking it
into /usr/bin, potentially overwriting the original version from GDM.
This must have been a workaround for an ancient LightDM version that
didn't even do that.

And finally, the hardcoded /usr/lib/lightdm/lightdm/gdmflexiserver path
was wrong on Fedora to begin with (we had used
/usr/libexec/lightdm/gdmflexiserver, but now the file is completely gone
because upstream removed it).
2014-11-29 17:21:36 +01:00
Kevin Kofler
e78418b693 displaymanager: Don't error if a DM is not installed.
If a display manager is in the list, but not installed, do not return an
error message, but only print a debugging message and proceed.

This allows distributions that support multiple display managers to list
them all, independently of what the concrete live image will be using.
2014-11-29 17:14:17 +01:00
Kevin Kofler
2783f98615 displaymanager: Add my copyright to main.py.
I have already written a bunch of code in there.
2014-11-29 16:56:43 +01:00
Kevin Kofler
a525de8f11 displaymanager: Fix typos in displaymanager.conf. 2014-11-29 16:56:16 +01:00
Manjaro Linux
0a6053dd82 Fix syntax error
This fixes e65d9c4f. Setting a variable can't end with :
This also fixes the issue with referenced before assignment
2014-11-28 22:12:19 +01:00
Kevin Kofler
6f78ecab3b displaymanager: Fix the default_desktop_environment option.
Do not use a YAML list when only a single entry actually works. (It was
just silently using the last one.)

Create the default_desktop_environment DesktopEnvironment tuple. Before,
the setting was silently ignored altogether.
2014-11-28 18:51:08 +01:00
Kevin Kofler
e65d9c4f4d Revert "Fix autologin-routine"
This reverts commit 9c799b32e9.

This was already right before. default_desktop_environment.desktop_file is not a
variable, it's a field of a variable. This commit is not valid Python:
"SyntaxError: invalid syntax".
2014-11-28 18:40:49 +01:00
Manjaro Linux
9c799b32e9 Fix autologin-routine
default_desktop_environment.desktop_file needs to been passed actually.
2014-11-28 18:36:18 +01:00
Manjaro Linux
6a70029198 Fix commit d5d74fbdcd
We need to pass default_desktop_environment if we won't use automatic desktop detection.
2014-11-28 18:27:16 +01:00
Manjaro Linux
ddc7a6057d Update displaymanager.conf
Add an example to force Plasma5 desktop (commented out)
2014-11-28 09:11:27 +01:00
Manjaro Linux
d5d74fbdcd Add option to force desktop environment
This adds the function to force a desktop environment. We might think to add it also to global storage.
2014-11-28 09:06:33 +01:00
Manjaro Linux
b4b409243f [displaymanager] make openbox session have "less priority".
Fixes settings Session= when both lxqt and openbox are installed, it will first find lxqt an use put lxqt.desktop
This fixes also #170
2014-11-28 08:23:46 +01:00
Manjaro Linux
36e8ed5f46 adjust LXDE startup scripts
- add LXQT support
- add LXDE 0.5 changes in Archlinux
2014-11-07 14:04:15 +01:00
Teo Mrnjavac
7c89613332 Merge pull request #140 from kkofler/detect-sddm-session-type
displaymanager: Detect SDDM session type
2014-11-07 11:50:28 +01:00
Kevin Kofler
8512e43405 displaymanager: Set Session= for sddm autologin.
Detect the correct value using find_desktop_environment.
2014-11-07 04:09:54 +01:00
Kevin Kofler
467d78dde6 displaymanager: Use a regex to match User= in sddm.conf.
This ensures we really only match the User= line and not the
RememberLastUser= one.
2014-11-07 04:09:54 +01:00
Kevin Kofler
e365864c05 displaymanager: Detect the KDE Plasma (5 and 4) and GNOME desktop environments.
Add them to the front of the list of desktop environments because users
are more likely to expect those as the default if they have them
installed.
2014-11-07 04:09:54 +01:00
Kevin Kofler
4990b8e3f8 displaymanager: Refactor the desktop environment detection to eliminate the copy&paste.
This also fixes some issues with the previous code:

* The code for LightDM only supported Xfce.

* The case where multiple desktop environments are installed was not
  handled in a good way.

* We now also check that the xsession definition actually exists. This
  allows handling the case where upstream changed the xsession
  definition's name without renaming the invoked binary.
2014-11-07 04:09:54 +01:00
Kevin Kofler
5a4ae7f62c displaymanager: Run "sddm --example-config > /etc/sddm.conf" in a shell.
Otherwise, the output redirection cannot work (and the argument was also
misinterpreted as part of the command name).
2014-11-07 01:09:33 +01:00
Teo Mrnjavac
1df44eddba Fix displaymanager sddm config call. 2014-11-06 10:44:53 +01:00
demmm
3828eb6d2a add the define 2014-11-05 22:42:58 -05:00
demmm
a186c7e44b Missing define, check_chroot_call replaced
not really needed here, subprocess.call well tested
2014-11-05 22:26:10 -05:00
demmm
49bdb25f30 remove erronous line line, wrongly left in 2014-10-30 14:30:53 -04:00
demmm
8cefd1dcb8 remove indent 2014-10-28 11:18:10 -04:00
demmm
e26335d2da proper check for existing sddm.conf
second set of if/else is obsolete with this, sddm.conf always exists at this point
2014-10-28 11:15:35 -04:00
demmm
231c93a513 missed colon 2014-10-27 14:00:35 -04:00
demmm
f26406daa4 actually create a sddm.conf 2014-10-27 13:53:34 -04:00
demmm
972fe23131 create sddm.conf if not present 2014-10-27 11:57:32 -04:00
Teo Mrnjavac
ea32ba6a83 Compare with None 2014-08-19 11:51:54 +02:00
Philip
ba1006a965 Fix autologin in displaymanager module 2014-08-18 21:46:44 +02:00
Teo Mrnjavac
52656190af Documentation. 2014-08-18 09:38:01 +02:00
Teo Mrnjavac
fea3b68d61 s/AutoUser/User/ 2014-08-18 09:30:45 +02:00
Teo Mrnjavac
bdc3185dbe Let's assume for now that the ISO must ship a sddm.conf. 2014-08-18 09:29:19 +02:00
Teo Mrnjavac
fd4c93c485 Create sddm.conf if it doesn't exist. 2014-08-18 09:24:43 +02:00
Teo Mrnjavac
d6d40d44ee PEP8 displaymanager. 2014-08-18 09:24:43 +02:00
Teo Mrnjavac
d93b8b9d44 New displaymanager module, based on Thus. 2014-08-18 09:24:43 +02:00