Skip to content

ck-launch-session set additional XDG variables for Wayland #109

Description

@wltjr

This is some what informational and maybe up for discussion.

I am working on developing Entrance, a EFL based display manager. It had some consolekit integration that I felt was duplicate of ck-launch-session, aka entrance_ck_launch, which I removed. I switched from entrance_ck_launch to ck-launch-session sometime back. I have been using ck-launch-session instead of entrance_ck_launch. That is all working fine.

Now I am looking into setting missing XDG variables that are needed for Wayland sessions, specifically

XDG_SEAT=seat0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0

Since ck-launch-session is setting XDG_SESSION_COOKIE and XDG_RUNTIME_DIR. I am thinking maybe it should be setting those others. Though those maybe something that is sent by a DM or login manager. However when I run ck-list-sessions I do see the seat. Just no seat path or session path. Though seems like those would be related. At least the seat, session maybe set by the DM, not sure.

Short of ck-launch-session setting those, seems like I may hook into consolekit2 to obtain such information. Or maybe dbus. Also have to look into the same for elogind, as I do not run systemd, but need to support such. I am not really clear on how to proceed. Thus filing this issue. Not trying to put this off to consolekit developers. But if such function already exists in ck-launch-session, might as well extend that. I could see about submitting PR with such modifications to ck-launch-session.

Seems like that is a better approach for Entrance than hooking directly into consolekit2. Like the way I am using it now, I am not coding against any of consolekit, just using ck-launch-session. That seems to be a easier to maintain, or replace with something else. Of course elogind/logind lacks a similar tool. I may have to develop something there to avoid having to code against elogind/logind or dbus api.

I have read many of the FDO docs, but it is still not clear how to obtain such. Seems this is one area that is not heavily documented. Any feedback or information is greatly appreciated! Thanks!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions