[Bugs] [Bug 305] ConsoleKit-0.4.2 sessions will not be local unless opened with a compatible login manager.

bugzilla-daemon at exherbo.org bugzilla-daemon at exherbo.org
Sun Sep 26 10:08:32 BST 2010


Brett Witherspoon <spoonb at cdspooner.com> changed:

           What    |Removed                     |Added
                 CC|                            |spoonb at cdspooner.com

--- Comment #1 from Brett Witherspoon <spoonb at cdspooner.com>  2010-09-26 09:08:32 ---
Hum, somehow I failed to really mention the solution and with all that text I
wasn't very clear. So here is the solution for those using xinit/startx and

1) Enable auditing in the kernel. CONFIG_AUDIT=y
2) Add "session option pam_ck_connector.so" to /etc/pam.d/login.
(I use system-local-login which I include in /etc/pam.d/login. You can also
give params like nox. See man pam_ck_connector.so)
3) Use ck-launch-session mywindowmanager somewhere in your xinitrc.

The pam module allows a local session to be created via a privileged process
using the OpenSessionWithParamters method. A local text session is then
created. When xinit is executed ck-launch-session calls the OpenSession method
which requires ConsoleKit to check if the new session leader originates from an
already existing local session (with is now the case) before it sets the
is-local parameter. For linux, ConsoleKit uses sessionid's from the /proc/pid
interface to determine this, so auditing support is needed for this to work.

Sidenote: We provide a ConsoleKit script in xinitrc.d but our default xinitrc
does not even source this dir. This was really a gentooism, but upstream
recently added this to there default xinitrc. The ConsoleKit script also needs
to be slightly modified. I will submit these patches shortly.

Configure bugmail: https://bugs.exherbo.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.

More information about the Bugs mailing list