After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 757715 - Allow wayland to be the default
Allow wayland to be the default
Status: RESOLVED FIXED
Product: gdm
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: GDM maintainers
GDM maintainers
Depends on:
Blocks:
 
 
Reported: 2015-11-07 03:19 UTC by Ray Strode [halfline]
Modified: 2015-11-09 19:29 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
libgdm: refactor session list handling code (3.40 KB, patch)
2015-11-07 03:20 UTC, Ray Strode [halfline]
committed Details | Review
libgdm: filter out wayland sessions from X11 login screen (2.80 KB, patch)
2015-11-07 03:20 UTC, Ray Strode [halfline]
committed Details | Review
session: route GdmSession "self" object into some functions (18.67 KB, patch)
2015-11-07 03:20 UTC, Ray Strode [halfline]
committed Details | Review
session: add property for ignoring wayland sessions (21.68 KB, patch)
2015-11-07 03:20 UTC, Ray Strode [halfline]
committed Details | Review
manager: filter out wayland user sessions if X11 login screen (3.87 KB, patch)
2015-11-07 03:20 UTC, Ray Strode [halfline]
committed Details | Review
launch-environment: set shell session mode in environment (24.51 KB, patch)
2015-11-09 18:05 UTC, Ray Strode [halfline]
committed Details | Review
data: drop override xsession files (2.73 KB, patch)
2015-11-09 18:05 UTC, Ray Strode [halfline]
committed Details | Review
session: give wayland sessions priority (3.29 KB, patch)
2015-11-09 18:05 UTC, Ray Strode [halfline]
committed Details | Review
launch-environment: always use "gnome" session now (3.83 KB, patch)
2015-11-09 18:05 UTC, Ray Strode [halfline]
committed Details | Review
session: always update session type when reading saved session (3.20 KB, patch)
2015-11-09 18:06 UTC, Ray Strode [halfline]
committed Details | Review
manager: don't use wayland for autologin if wayland disabled (3.82 KB, patch)
2015-11-09 19:28 UTC, Ray Strode [halfline]
committed Details | Review

Description Ray Strode [halfline] 2015-11-07 03:19:44 UTC
For Fedora 24, we want to do wayland by default.  It's not a simple
matter of just changing the default session name, though, since there
are still situations where we can't do wayland (like proprietary nvidia).

So before we can make wayland the default user session, we need to
make sure that we filter wayland from the list of possible user sessions
in cases when it won't work.

We already fallback from wayland in the greeter session, so we can just use
the logic "If the login screen isn't wayland, don't allow wayland user
sessions"
Comment 1 Ray Strode [halfline] 2015-11-07 03:20:37 UTC
Created attachment 315016 [details] [review]
libgdm: refactor session list handling code

This commit splits the code for getting sessions up into two chunks:
xorg and wayland.

This is necessary because future commits will treat xorg and wayland
sessions differently.
Comment 2 Ray Strode [halfline] 2015-11-07 03:20:40 UTC
Created attachment 315017 [details] [review]
libgdm: filter out wayland sessions from X11 login screen

We use wayland by default on the login screen, so if we're running
in an X11 session, then the presumption is that we're incapable of
using wayland. If we're incapable of using wayland sessions then
we shouldn't present those sessions to the user in the session list
either.

This commit makes sure to avoid showing wayland based sessions
in the session list if the login screen is running on X11.
Comment 3 Ray Strode [halfline] 2015-11-07 03:20:44 UTC
Created attachment 315018 [details] [review]
session: route GdmSession "self" object into some functions

We're going to need to look at session state in the future.
This commit preps the way forward, for that by, making sure
the state object is available.
Comment 4 Ray Strode [halfline] 2015-11-07 03:20:48 UTC
Created attachment 315019 [details] [review]
session: add property for ignoring wayland sessions

We're going to want to be able to exclude wayland
sessions from the search path if the manager deems it
necessary.

This commit adds a property to GdmSession to give the
manager that ability.
Comment 5 Ray Strode [halfline] 2015-11-07 03:20:52 UTC
Created attachment 315020 [details] [review]
manager: filter out wayland user sessions if X11 login screen

We use wayland by default on the login screen, so if we're running
in an X11 session, then the presumption is that we're incapable of
using wayland. If we're incapable of using wayland sessions then
we should ignore wayland sessions read from user configuration and
fall back to non-wayland defaults.
Comment 6 Ray Strode [halfline] 2015-11-07 03:22:34 UTC
Attachment 315016 [details] pushed as 754754c - libgdm: refactor session list handling code
Attachment 315017 [details] pushed as 7a12733 - libgdm: filter out wayland sessions from X11 login screen
Attachment 315018 [details] pushed as eda44de - session: route GdmSession "self" object into some functions
Attachment 315019 [details] pushed as 5f6edc4 - session: add property for ignoring wayland sessions
Attachment 315020 [details] pushed as 246d9a2 - manager: filter out wayland user sessions if X11 login screen

(still need to make the default session configure-able to wayland)
Comment 7 Ray Strode [halfline] 2015-11-09 18:05:44 UTC
Created attachment 315141 [details] [review]
launch-environment: set shell session mode in environment

Right now we explicitly pass --mode=gdm to gnome-shell
via a complicated set of overridden desktop files.

This commit instead sets GNOME_SHELL_SESSION_MODE so we
can just use the stock files.
Comment 8 Ray Strode [halfline] 2015-11-09 18:05:48 UTC
Created attachment 315142 [details] [review]
data: drop override xsession files

We now tell gnome-shell to use GDM mode a different
way so we don't need to override the desktop files
anymore.
Comment 9 Ray Strode [halfline] 2015-11-09 18:05:52 UTC
Created attachment 315143 [details] [review]
session: give wayland sessions priority

If two sessions have the same name, give the wayland one
priority, unless wayland sessions are being ignored.
Comment 10 Ray Strode [halfline] 2015-11-09 18:05:57 UTC
Created attachment 315144 [details] [review]
launch-environment: always use "gnome" session now

gnome-wayland isn't a thing anymore, wayland just
uses the same session name.
Comment 11 Ray Strode [halfline] 2015-11-09 18:06:00 UTC
Created attachment 315146 [details] [review]
session: always update session type when reading saved session

We previously only did it if the session name was different,
but now it's possible to have sessions of both types with the
same name.
Comment 12 Ray Strode [halfline] 2015-11-09 18:06:42 UTC
Attachment 315141 [details] pushed as ac1b142 - launch-environment: set shell session mode in environment
Attachment 315142 [details] pushed as 26006da - data: drop override xsession files
Attachment 315143 [details] pushed as 6cd2d24 - session: give wayland sessions priority
Attachment 315144 [details] pushed as dabc0b7 - launch-environment: always use "gnome" session now
Attachment 315146 [details] pushed as 1cc1388 - session: always update session type when reading saved session
Comment 13 Ray Strode [halfline] 2015-11-09 19:28:46 UTC
Created attachment 315152 [details] [review]
manager: don't use wayland for autologin if wayland disabled

These days we default to using wayland user sessions if the
unless greeter isn't wayland.  But in the case of automatic
login there is no greeter.

This commit makes automatic login ignore wayland sessions if
wayland is disabled in the config file. This gives us symetry
with the greeter case, and provides a way for users to opt
out of wayland.
Comment 14 Ray Strode [halfline] 2015-11-09 19:29:27 UTC
Comment on attachment 315152 [details] [review]
manager: don't use wayland for autologin if wayland disabled

Attachment 315152 [details] pushed as 65f560a - manager: don't use wayland for autologin if wayland disabled