[ConsoleKit] ck-dynamic interface

Halton Huo Halton.Huo at Sun.COM
Thu Jul 23 23:15:22 PDT 2009


Hi All,

I'm glad that have a chance talk with Jon and Ray during Gran Canaria
Desktop Summit.
 
We're starting paperwork to get ConsoleKit and new GDM into OpenSolaris.
I'd like to talk about ck-dynamic interfaces for finalization here. 

Actually, we talked it in
http://lists.freedesktop.org/archives/consolekit/2009-June/000005.html.
To be more specific, I start a separate email thread.

Following design is based on Ray's comments and his working repository
http://cgit.freedesktop.org/~halfline/ConsoleKit. Please review it.
Thoughts and comments are welcomed.

To add a session
(ck-dynamic -a)
===============
   $ck-dynamic -a --session-type=<session_type>
--display-type=<display_type> [--seat-id=<seat_id>] [variables...] 

session_type
     Specify session type. Now only support LoginWindow AFAIK.
display_type 
     Specify display type under <etc>/ConsoleKit/displays.d/
seat_id
     Specify a seat to attach this session. If not given, create a new 
     seat.
variables
     Specify values of variables in display type

To remove a session
(ck-dynamic -d)
===============
   $ck-dynamic -d --display-number=<display_number> (Needed for SunRay)
OR
   $ck-dynamic -d --session-id=<session_id>

To list sessions
(ck-dynamic -l)
=============
   $ck-dynamic -l [--display-type=<display_type>]
   List dynamic displays. If display_type is not given, show all dynamic
sessions. Otherwise, only show sessions for start with given
display_type. The result is separated by ";", for example, ":110;:111"

Examples:
============
1. Start a local session with display :1 on vt8, this session is
attached on Seat1.
   $ck-dynamic -a --session-type=LoginWindow --display-type=Local
--seat-id=Seat1 display=:1 vt=vt8

2. Start a VNC session with display :8 port 5908 and password
file /etc/X11/vnc-password. 

Precondition 
------------
<etc>/ConsoleKit/displays.d/LocalVNC.display as following:
[Display]
Type=X11

[X11]
Exec=@X11_DIR@/Xvnc -rfbport $port -PasswordFile $password-file $display

Command
------------
  $ck-dynamic -a --session-type=LoginWindow --display-type=LocalVNC
port=5908 password-file=/etc/X11/vnc-password display=:8

3. Start a SunRay session with display :11
Precondition 
------------
<etc>/ConsoleKit/displays.d/SunRay.display as following:
[Display] 
Type=X11

[X11]
Exec=/etc/opt/SUNWut/basedir/lib/utxsun $display -auth $auth

Command
------------
  $ck-dynamic -a --session-type=LoginWindow --display-type=SunRay
display=:11

4. List all SunRay sessions created dynamically
  $ck-dynamic -l --display-type=SunRay
  :11;:12
  $

5. Remove session with display number :11
  $ck-dynamic -d --display-number=:11

6. Remove session with session id Session3
  $ck-dynamic -d --session-id=Session3

Thanks,
Halton.



More information about the ConsoleKit mailing list