dtsession(1X)

dtsession - the CDE Session Manager

Showing IRIX 6.5.30 (default release). Added in IRIX 6.5.19.

     NAME
          dtsession - the CDE Session Manager

     SYNOPSIS
          dtsession [options]

          NOTE : The dtsession client is automatically invoked by the
          DT Login Manager (dtlogin(1X)) via the Xsession script. If
          desired, dtsession may be started via the Xsession script on
          an existing X server.

          NOTE : dtsession automatically starts a window manager.

     DESCRIPTION
          The dtsession client provides ICCCM 1.1 compliant session
          management functionality during a user's session, the time
          from login to logout.  It launches a window manager and
          allows for saving a session, restoring a session, locking a
          session, launching screen savers and allocating colors for
          desktop compatible clients.


        Key Supported Tasks
          The dtsession client supports the following key tasks:

               - Initializing a session.

               - Launching a window manager.

               - Restoring a `home' or `current' session.

               - Providing session locking on command or timeout.

               - Providing session screen saving on command or
               timeout.

               - Acting as a color allocation server for other DT
               clients.

               - Saving a `home' or `current' session.

               - Displaying confirmation dialog at logout.

               - Displaying session selection dialog at logout.

               - Terminating a session.

        A Session
          A session is the collection of applications, settings and
          resources that are present on the user's desktop. Session
          management is a set of conventions and protocols that allow
          a special session manager such as dtsession to save and

          restore a user's session. A user is able to log into their
          system and be presented with the same set of running
          applications, settings and resources as were present when
          the user logged off. When a user logs into the desktop for
          the first time, a default initial session is loaded.
          Afterward, dtsession supports the notion of a current and a
          home session.


        The Initial Session
          When a user logs into the desktop for the first time,
          dtsession will generate the user's initial session using
          system default values.  Refer to Session Resource Management
          and Session Application Management for more information.

        The Current Session
          The user's running session is always considered the current
          session, whether restored upon login from a saved home
          session, a saved current session or the system default
          initial session. Based on the user's Style Manager Startup
          settings, when the user exits the session, the current
          session is automatically saved. When the user next logs into
          the desktop, the previously saved current session is
          restarted. This means that the desktop will be restored to
          same state as it was when the user last logged out.


        The Home Session
          Another option is having the desktop be restored to the same
          state every time the user logs in, regardless of its state
          when the user logged out. The user may save the state of the
          current session, then via the Style Manager Startup
          settings, have the desktop start that session every time the
          user logs in.

        Display-specific Sessions
          To run a specific session for a specific display, a user may
          create a display-specific session. To do this, the user can
          copy the $HOME/.dt/sessions directory to $HOME/.dt/display
          where display is the real, unqualified hostname (for
          example, pablo:0 is valid, pablo.gato.com:0 or local:0 is
          not). When the user logs in on display pablo:0, that display
          specific session will take precedence.


        The ICCCM Session Management Protocol
          For an application to be saved upon logout and restarted
          upon login, it must participate in a simple session
          management protocol. Dtsession supports the ICCCM 1.1
          Session Management Protocol.

          Applications that wish to save their state can take part in
          the WM_SAVE_YOURSELF protocol. To do this, an application
          needs to set the WM_SAVE_YOURSELF property on one and only
          one of its top-level windows. When a session is saved,
          dtsession will send the application's top-level window a
          WM_SAVE_YOURSELF client message. At this point the
          application can proceed to quietly save its state. The
          application cannot interact with the user in any way as it
          is saving its state. As an application will likely save its
          state into a file, the session manager provides a
          convenience function DtSessionSavePath() which returns a
          full pathname of a file in which an application can save its
          state. While the application is saving its state, dtsession
          is awaiting notice from the application that it is done. To
          tell dtsession that the state save is complete, the
          application needs to update the WM_COMMAND property on its
          top-level window.

          The WM_COMMAND property on an application's top-level window
          serves two purposes. First, a change of this property is the
          indication to dtsession that an application is done saving
          its state and dtsession can proceed to the next application.
          Second, the WM_COMMAND property value is expected to contain
          the command line that dtsession will use to restart the
          application at session startup. If an application is
          launched with a full pathname, then it should use the full
          pathname when setting WM_COMMAND. Applications that do not
          need to save their state, but wish to be restarted, can
          simply set WM_COMMAND during application startup and forget
          about it.

          Refer to the XmAddWmProtocols(), XmAddWMProtocolCallback()
          and XSetCommand() API's for more information.


        Restoring A Session
          At session startup time, dtsession will determine which
          session to restore. The following describes the precedence:

          - Display-specific Current or Home Session -OR-

          - Current or Home Session -OR-

          - Initial Session

        Session Resource Management
          The session manager uses the X Server RESOURCE_MANAGER
          property on which to make available desktop resources to all
          applications.  The session manager will load the
          RESOURCE_MANAGER in the following manner:

          - load the system default resources -AND-

          - merge any system administrator specified resources -AND-

          - merge any user specified resources

          The desktop default resources can be found in
          /usr/dt/config/$LANG/sys.resources. These resources will be
          made available to each user's session via the
          RESOURCE_MANAGER property. This file should not be edited as
          it will be unconditionally overwritten upon subsequent
          desktop installations.

          A system administrator may augment the system default
          resources by creating /etc/dt/config/$LANG/sys.resources. In
          this file, a system administrator may override system
          default resources or specify additional resources. As this
          file is merged into the desktop default resources during
          session startup, it is preferrable that only new or updated
          resource specifications be placed in this file, rather than
          a copy being made of the desktop default resource file.
          Resources specified in this file will be made available to
          each user's session via the RESOURCE_MANAGER property.
          Resources specified in this file take precedence over those
          specified in the desktop default resource file.

          A user may augment the desktop default and system
          administrator resources via their $HOME/.Xdefaults file.
          Resources specified in this file will be made available to
          only that user's session via the RESOURCE_MANAGER property.
          Resources specified in this file take precedence over those
          specified in the desktop default or system administrator
          resource files.

          NOTE : The X Toolkit Intrinsics specifies that it will load
          resources for an application from either RESOURCE_MANAGER or
          from $HOME/.Xdefaults, but not both. Ordinarily, this would
          mean that the user's $HOME/.Xdefaults file would be ignored.
          However, the session manager accomodates $HOME/.Xdefaults by
          merging it into the RESOURCE_MANAGER at session startup as
          described above. If a user changes their $HOME/.Xdefaults,
          their changes will not be visible to new applications until
          the user invokes the ReloadResources action.

          The ReloadResources action will instruct the session manager
          to reload the RESOURCE_MANAGER with the system, system
          administrator and user specified resources. This is useful
          to make available to new applications changes made to system
          administrator or user specified resource files.

          See also dtresourcesfile(4) and dtsessionactions(5).

        Session Application Management
          At session startup, the session manager will restart any
          applications that were saved as part of the session. The
          system default set of applications to be restored as part of

          the user's Initial Session can be found in
          /usr/dt/config/$LANG/sys.session. This file should not be
          edited as it will be unconditionally overwritten upon
          subsequent desktop installations.

          See also dtsessionfile(4).

          A system administrator may replace the set of applications
          that are restored as part of the user's Initial Session by
          creating a file named /etc/dt/config/$LANG/sys.session.
          Unlike the resource files, this file will be used as a
          complete replacement for the desktop default file, so it is
          valid to make a copy of the system default file and make any
          necessary modifications.


        The Window Manager
          Dtsession is responsible for starting the window manager. By
          default /usr/dt/bin/dtwm is started. An alternate window
          manager can be specified with the wmStartupCommand resource.
          Refer to the Workspace Manager specification for more
          information.

        The Style Manager
          The style manager provides the interface by which a user can
          change various desktop and X server settings for the current
          session. Refer to the Style Manager specification for more
          information.


        The Color Server
          Dtsession serves as the color server for the desktop and
          provides a set of resources that can be used to configure
          it. The foregroundColor resource controls whether a pixel is
          allocated for the foreground color. The dynamicColor
          resource specifies whether read-only colors are allocated.
          The shadowPixmaps resource specifies whether colors are
          allocated for top shadow or bottom shadow. The colorUse
          resource limits color allocation.  Finally, the
          writeXrdbColors resource specifies whether the *background
          and *foreground resources are placed in the resource
          database. See the Color Server Resources section and the
          Color Model specification for more information.

        Session Lock
          Dtsession provides session locking. The current session can
          be locked directly by pressing the lock icon on the front
          panel. If supported by the X server, the current session can
          be locked after a specified period of inactivity. To unlock
          the session, the user must enter their login password.

          By default, dtsession supports traditional local UNIX

          authentication for unlocking the session.  Additional re-
          authentication function such as that required by DCE may be
          added by individual vendors.


        Screen Savers
          Dtsession provides support for the launching of external
          screen savers as a part of session locking from the front
          panel or, if supported by the X server, after a specified
          period of inactivity. Refer to the Screen Saver
          specification for information as to how screen savers are
          integrated into the desktop.

        X Server Screen Saver Extensions
          Dtsession's ability to provide session lock or screen saver
          launch after a specified period of inactivity depends upon
          the availability of an X server screen saver extension.
          Dtsession supports two such extensions:

               - X Consortium Sample X11 Screen Saver Extension 1.0

               - HP X Screen Saver Extension

          The ability of dtsession to recognize both, either or none
          of these extensions is vendor specific.


        Launching The Session Manager
          Dtsession should be launched from the Xsession script.
          Xsession is described in the login manager specification. It
          is recommended that Xsession be launched from dtlogin as
          part of the login sequence as is the default but there are
          alternative methods of starting Xsession:

          dtlogin        the default dtlogin configuration launches
                         Xsession when a user logs in

          proxy          some systems will allow programs such as
                         xinit, x11start or startx to start Xsession

     OPTIONS
          The dtsession client is automatically invoked by the DT
          Login Manager (dtlogin(1X)). If desired, dtsession may also
          be started on an existing X server. Note that dtsession
          automatically starts a window manager.


        -norestore
          This option instructs dtsession not to restore a previous
          session nor save the session upon logout.

     RETURN VALUE
           Exit values are:
          0              Successful completion.

          >1             Error condition occurred.

     EXAMPLES
        dtsession -norestore
          Start session manager from command line without restoring
          previous session.

     RESOURCES
        Color Server
                  Name           ClassClass       Type     Default
             _____________________________________________________
             colorUse          ColorUse          String    DEFAULT
             dynamicColor      DynamicColor      Boolean   True
             foregroundColor   ForegroundColor   String    DYNAMIC
             shadowPixmaps     ShadowPixmaps     String    DEFAULT
             writeXrdbColors   WriteXrdbColors   Boolean   True

        Screen Lock/Screen Save
               Name           ClassClass          Type        Default
          ___________________________________________________________
          keys              Keys              unsigned char   NULL
          passwordTimeout   passwordTimeout   unsigned int    10

        Miscellaneous
            Name               ClassClass             Type         Default
     _____________________________________________________________________
     queryServerSettings   QueryServerSettings   Boolean           False
     saveFontPath          SaveFontPath          Boolean           False
     wmStartupCommand      WmStartupCommand      executable path   NULL

        colorUse - DEFAULT
          This resource specifies the number of colors to use for the
          user interface. Valid types are: Color server will determine
          type of monitor based upon number of display planes of the
          screen as follows:

          1,2  B_W

          4    LOW_COLOR

          6    MEDIUM_COLOR

          7+   HIGH_COLOR

          B_W - Specifies a black and white system. The color palettes
          will use two color cells for the user interface. In this
          configuration only two color palettes are available:
          BlackWhite and WhiteBlack.  These palettes cannot
          dynamically change. To change a palette, all applications
          using that color palette must be restarted. This resource

          value forces ShadowPixmaps to True, and ForegroundColor to
          either black or white depending on the palette chosen.

          LOW_COLOR - Specifies a low color system. The color palettes
          will have two color sets and use a maximum of 12 color cells
          for the user interface, including black and white (color
          cells 0 and 1). The number of co ShadowPixmaps and
          ForegroundColor.

          MEDIUM_COLOR - Specifies a medium color system. The color
          palettes will have 4 color sets and use a maximum of 22
          color cells for the user interface, including black and
          white (color cells 0 and 1). The number of color cells can
          be reduced by using the resources ShadowPixmaps and
          ForegroundColor.

          HIGH_COLOR - Specifies a high color system. The color
          palettes will have 8 color sets and use a maximum of 42
          color cells for the user interface. including black and
          white (color cells 0 and 1). The number of color cells can
          be reduced by using the resources ShadowPixmaps and
          ForegroundColor.


        dynamicColor
          This resource can have values of True or False. dynamicColor
          is used to reduce the number of color cells being used. Once
          a palette has been selected and it is not likely to be
          changed, dynamicColor can be set to False. If set to False
          colors cannot be dynamically changed using the DT style
          manager. A selected palette will take effect the next
          session. The next time the session comes up, the color
          server uses Read Only color cells that can be shared by all
          clients, thus reducing the number of color cells used.

        foregroundColor
          This resource can have values of White, Black or Dynamic.
          ForegroundColor causes all text (foreground) to use either
          pixel 0 or 1 (Black or White) or to have a color cell
          dedicated to foreground and changes in response to the
          background color (Dynamic) for each ColorSet. If set to
          White or Black, the number of color cells used per ColorSet
          is reduced by 1.


        keys
          This resource is a list of keyholders who have the ability
          to unlock the screen any time it is locked by the user. The
          list is a list of user id's separated by commas. For example
          if user kim has the following resource active during a
          session:

          Dtsession*keys: fred,keith

          Users fred and keith have the ability to unlock the display
          when kim locks it.


        passwordTimeout
          This resource specifies (in seconds) the amount of time
          before the password dialog is removed from the screen. When
          the display is locked, the pointer shows a lock cursor, and
          a dialog appears which asks for the user password. If no
          activity from the pointer or keyboard is detected for
          passwordTimeout seconds, the dialog is removed from the
          screen. The dialog is redisplayed as soon as a pointer or
          keyboard event is detected. An passwordTimeout of 0 leaves
          the password dialog in place for the entire time the display
          is locked. The default value is 10 seconds.

        queryServerSettings
          This resource specifies whether dtsession queries the server
          at logout for all its settings or saves only those settings
          set by using the DT Style Manager. Querying the server
          ensures that all settings are saved; however, there is a
          degradation in performance when a full query is done. The
          default value is False, which means that the server will not
          be queried.


        shadowPixmaps
          For color systems, this resource can have a value of True or
          False. If True, topShadowColor and bottomShadowColor use the
          same pixel as background and topShadowPixmap and
          bottomShadowPixmap are specified instead of solid color to
          create the 3D look. This reduces the number of color cells
          per ColorSet by 2.  ShadowPixmaps defaults to True for
          systems with 4 or less color planes (16 or less color
          cells), and False for systems with more than 4 color planes.

        wmStartupCommand
          This resource allows for an alternate window manager to be
          started at login. If this resource is NULL , dtsession
          starts /usr/dt/bin/dtwm. An alternate startup might look
          like:  Dtsession*wmStartupCommand: /usr/bin/X11/mwm

          NOTE : that the command should not have any commands to a
          shell in it, and that it should not be surrounded by quotes.
          Also, if any other window manager other than dtwm is used,
          clients will be restored, but may not be restored to the
          correct position. By default, this resource contains a NULL
          value.

     FILES

          /usr/dt/config/$LANG/sys.session
                         The desktop default set of applications for
                         the user's Initial Session.

          /etc/dt/config/$LANG/sys.session
                         System Administrator specified set of
                         applications for the user's Initial Session.

          /usr/dt/config/$LANG/sys.resources
                         The desktop default resources.

          /etc/dt/config/$LANG/sys.resources
                         System administrator specified resources.

          $HOME/.Xdefaults
                         User specified resources.

          Dtsession stores session information in $HOME/.dt/display or
          $HOME/.dt/sessions. The content of these directories should
          not be directly edited by the user.

          /usr/dt/app-defaults/$LANG/Dtsession
                         Default dtsession resources.

     SEE ALSO
          See related specifications:

          dtstyle        Customization of many session properties

          dtscreen       Desktop screen savers

          dtwm           Window manager

          dtlogin        Login manager

          dtsessionaction
                         Session manager actions

          dtsessionfile  Format and location of desktop session files

          dtresourcesfile
                         Format and location of desktop resource files