| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
Woops, 3.17.3 doesn't ship a unit file.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This loads key-value files from /usr/share/gdm/env.d/*.env and
/etc/gdm/env.d/*.env (in alphabetical filename order) and sets
in the session environment.
https://bugzilla.gnome.org/show_bug.cgi?id=751158
|
|
|
|
|
|
|
| |
This allows shell-like expansion of strings. It will be later
used to allow configuring the environment via config files.
https://bugzilla.gnome.org/show_bug.cgi?id=751158
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
It was used by ConsoleKit to set the "LoginWindow" property on
login screen sessions. it's not used by logind and ConsoleKit
is gone now, so drop it.
https://bugzilla.gnome.org/show_bug.cgi?id=743940
|
|
|
|
|
|
|
| |
Now that consolekit support is gone, this commit drops all
the conditionalizing of logind support.
https://bugzilla.gnome.org/show_bug.cgi?id=743940
|
|
|
|
|
|
| |
It was deprecated in 3.16 to be removed in 3.18
https://bugzilla.gnome.org/show_bug.cgi?id=743940
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Desktop sessions require a message bus to be present for IPC between
the various desktop services and applications.
GDM handles that by manually, unconditionally spawning an instance of
dbus-daemon at login time before starting the user session (from the
gdm-x-session and gdm-wayland-session launcher programs).
Newer versions of the kernel will support this message bus functionality
without needing to start dbus-daemon (via kdbus). The message bus is
initialized as part of the login process by a kernel interface exercised
from pam_systemd.
Since gdm-x-session and gdm-wayland-session spawn a dbus-daemon
unconditionally as part of session startup, users using kdbus end up with
two message buses per session. The extra bus gets in the way, confusing
programs and wasting resources.
This commit changes gdm-x-session and gdm-wayland-session to check for
DBUS_SESSION_BUS_ADDRESS in the environment, and if set, skip spawning
a dbus-daemon based session bus.
https://bugzilla.gnome.org/show_bug.cgi?id=750358
|
|
|
|
| |
Noticed this because the Continuous smoketest started timing out.
|
|
|
|
|
|
|
|
| |
Most distros use custom logic for their Xsession, so we can't really
ship a default here. Doing so would break people running "make install"
and expecting things to work.
https://bugzilla.gnome.org/show_bug.cgi?id=750220
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit e5a0e92f59e256edc6489f2234fbe54c25ba9743 introduced a way to
find a user session associated with a display object.
That function has a bug in it, where it skips every even
registered user session because it follows the next pointer
twice per iteration of the loop.
This can cause a crash on monitor hotplug, and in other scenarios
if there are an odd number of user sessions (since the
terminating NULL will be even and skipped over).
https://bugzilla.gnome.org/show_bug.cgi?id=749987
|
| |
|
| |
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=747987
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
x11_display_name got freed twice here; once by g_variant_iter_loop
and once by g_clear_pointer.
Also break out of the loop early and use a non-copying format to
avoid having to free anything.
https://bugzilla.gnome.org/show_bug.cgi?id=747310
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The code to query the display number of the display object is
erroneously tucked away in
guards. This leads to the display device getting queried prematurely.
https://bugzilla.gnome.org/show_bug.cgi?id=747351
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Once the server associated with the login screen session is ready, we
query its display device for ConsoleKit. This device needs to get
propagated to the session to ensure ConsoleKit can track session
activeness properly.
This commit makes sure the display device is plumbed from the GdmServer
object to the GdmLaunchEnvironment object where it gets used by the
the login session (and subsequently the user session).
https://bugzilla.gnome.org/show_bug.cgi?id=747351
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
wayland sessions don't necessarily have a display name, so this
commit just uses the display device instead.
https://bugzilla.gnome.org/show_bug.cgi?id=747169
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the wayland server used at login time registers with GDM, GDM tries
to write a wtmp session record for it.
wtmp registration for wayland sessions shouldn't use $DISPLAY like X11
displays, since $DISPLAY isn't as core and meaningful to wayland
displays.
Instead it could probably use tty device, but the tty device isn't
up to date.
This commit makes sure the tty device is associated with the session
object at registration time.
A future commit will probably move the tty association code to
gdm-session.c at session open time.
https://bugzilla.gnome.org/show_bug.cgi?id=747169
|
|
|
|
|
|
|
| |
We'll need the tty to give a reasonable wtmp record for wayland
sessions.
https://bugzilla.gnome.org/show_bug.cgi?id=747169
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the X server used at login time registers with GDM, GDM tries
to write a wtmp session record for it.
Now that the X server is started in the session, we don't know
the display name of the X server up front and so don't have the
display name attached to the session object. The wtmp record writing
code relies on getting the display name from the session object, and
so it fails.
We do know the display name at registration time, from the details
passed to the registration function.
This commit makes sure to attach the display name to the session object
as soon as the display is registered before writing the wtmp record.
https://bugzilla.gnome.org/show_bug.cgi?id=747169
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We try to look up the session at registration time to add wtmp
records for it. We fail to actually find the session, though,
because we're using the "embryonic-user-session" object data
key, which is only non-NULL when the user session is still
getting setup.
This commit changes the registration code, to instead, fetch
the session straight from the manager object.
https://bugzilla.gnome.org/show_bug.cgi?id=747169
|
|
|
|
|
|
|
|
| |
This is like the previous commit, but a slightly better choice,
because it's more fault tolerant; if GDM fails to kill a child,
systemd will help out.
https://bugzilla.gnome.org/show_bug.cgi?id=747088
|
|
|
|
|
|
|
|
|
|
|
|
| |
By default systemd will kill the entire control-group in one fell
swoop. The problem is, things don't get shutdown in the right
order then, and there's a race where GDM will begin restarting
X servers as soon as they're killed.
This commit tells systemd to just kill the main GDM process, and
let it handle killing all its children on its own.
https://bugzilla.gnome.org/show_bug.cgi?id=747088
|
|
|
|
|
|
|
| |
Now that we're using a dispose handler instead of a finalize handler,
we need to make sure we nullify our objects after unrefing them.
https://bugzilla.gnome.org/show_bug.cgi?id=745975
|
| |
|