Solaris Common Desktop Environment: Advanced User's and System Administrator's Guide

Chapter 9 Desktop Search Paths

The desktop uses search paths to locate applications and their associated desktop files.

The desktop provides four search paths, described in Table 9-1.

Table 9-1 Desktop Search Paths

Search Path 

Description 

Applications 

Used to locate applications. Application Manager uses the application search path to dynamically populate its top level when a user logs in. 

Database 

Used to specify additional locations for action and data type definition files (*.dt files) and Front Panel files (*.fp files).

Icons 

Used to specify additional locations for icons.  

Help data 

Used to specify additional locations for desktop help data. 

The search paths can include both local and remote directories. Thus, the search paths play an important role in the networking architecture of the desktop. For example, a system finds applications on an application server because that application server is listed in the application search path.

When a search path includes a remote location, you must configure remote file access to the location. For more information, see "Configuring Distributed File System Access".

Desktop Search Paths and Their Environment Variables

The desktop search paths are created at login by the desktop utility dtsearchpath. The dtsearchpath utility uses a combination of environment variables and built-in locations to create the search paths.

The environment variables that dtsearchpath reads are called input variables. These are variables set by the system administrator or end user. The input variables use the naming convention DTSP*.

When dtsearchpath runs at login time, it assembles the values assigned to these variables, adds built-in locations, and creates values for output variables. There is an output variable for each search path.

Table 9-2 Desktop Search Path Environment Variables

Search Path For: 

Output Environment Variable 

System-Wide Input Variable 

Personal Input Variable 

Applications 

DTAPPSEARCHPATH

DTSPSYSAPPHOSTS

DTSPUSERAPPHOSTS

Database [Actions, data types, and Front Panel definitions]

DTDATABASESEARCHPATH

DTSPSYSDATABASEHOSTS

DTSPUSERDATABASEHOSTS

Icons 

XMICONSEARCHPATH, XMICONBMSEARCHPATH

DTSPSYSICON

DTSPUSERICON

Help data 

DTHELPSEARCHPATH

DTSPSYSHELP

DTSPUSERHELP

Components use the values of the output variables. For example, Application Manager uses the value of the application search path (DTAPPSEARCHPATH) to locate application groups.

Setting the Value of a Search Path

You can modify the search paths on a system-wide or personal basis. Modifications are done by setting values for the system-wide or personal input variables. Any modifications you make are added to the built-in search path locations.

To See the Current Value for a Search Path (Output Variable)

    Use the dtsearchpath command to display the current values for the search paths:

		dtsearchpath -v
		dtsearchpath -u user

Search path values include these variables:

%H--used in DTHELPSEARCHPATH. The help volume name.

%B--used in XMICONSEARCHPATH. The base name of an icon file.

%M--the size of the icon file (.l, .m, .s, .t) used in XMICONSEARCHPATH.

%L--value of the LANG environment variable.

To Make Personal Modifications to a Search Path

  1. Open HomeDirectory/.dtprofile for editing.

  2. Add or edit a line that defines and exports the personal input variable.

    For example, the following line adds a location to the user's personal application search path:

    	export DTSPUSERAPPHOSTS=/projects1/editors
  3. To make the change take effect, log out and back in.

To Make System-Wide Modifications to a Search Path

  1. Log in as root.

  2. If the file /etc/dt/config/Xsession.d/0010.dtpaths doesn't exist, create it by copying /usr/dt/config/Xsession.d/0010.dtpaths.

  3. Open /etc/dt/config/Xsession.d/0010.paths for editing. Add or edit a line that defines and exports the system-wide input variable.

    For example, the following line adds a location to the system-wide help search path:

    	export DTSPSYSHELP=/applications/helpdata
  4. Inform all users on the system that they must log out and back in for the change to take effect.

Application Search Path

The application search path is the primary search path used by the desktop to locate applications on the local system and on application servers throughout the network.

When locations are added to the application search path, the other search paths (database, icon, and help) are automatically updated to reflect the corresponding locations for that data; thus, the application search path provides relatively simple administration for applications and their desktop configuration files. See "How the Application Search Path Affects the Database, Icon, and Help Search Paths".

Default Application Search Path

The default application search path includes personal, system-wide, and built-in locations. The default language is C.

Personal location--HomeDirectory/.dt/appmanager

System-wide location--/etc/dt/appconfig/appmanager/language

Built-in location--/usr/dt/appconfig/appmanager/language

Application Search Path Environment Variables

The application search path is assembled from the built-in locations and the following input variables:

DTSPSYSAPPHOSTS--system-wide application search path input variable

DTSPUSERAPPHOSTS--personal application search path input variable

The assembled search path is specified by the output variable DTAPPSEARCHPATH.

Syntax for the Application Search Path Input Variables

The syntax for the variables DTSPSYSAPPHOSTS and DTSPUSERAPPHOSTS is:

VARIABLE=location [,location...]

where location can have the syntax:

/path--specifies a directory on the local (session server) system. Use this syntax to add a local directory.

hostname:--specifies the system-wide directory /etc/dt/appconfig/appmanager/language on system hostname. Use this syntax to add an application server.

hostname:/path--specifies a directory on the remote system hostname.

localhost:--the local system-wide location. This keyword is used to alter the precedence of the local system-wide location. See "Changing the Precedence of the System-Wide Local Location".

How the Value of the Application Search Path Is Assembled

The value of the application search path (DTAPPSEARCHPATH) is created by assembling the following locations, listed in order of precedence:

Changing the Precedence of the System-Wide Local Location

By default, the local system-wide location (/etc/dt/appconfig/appmanager/language) has precedence over remote locations. Thus, local application groups have precedence over remote groups with the same name. For example, if both the local and remote systems have Printer application groups (/etc/dt/appconfig/appmanager/language/Printers), the local group is used.

The application search path input variables provide syntax for specifying the precedence of the local system-wide application groups:

localhost:

For example, suppose your system must access application servers SysA, SysB, and SysC, and you want the system-wide application groups on SysB to have precedence over any local groups with the same name.

The following value for DTSPSYSAPPHOSTS creates this behavior:

DTSPSYSAPPHOSTS=SysB:,localhost:,SysA:,SysC:

How the Application Search Path Affects the Database, Icon, and Help Search Paths

Additions to the application search path automatically add corresponding locations to the database, icon, and help search paths. This provides the ability to add an application server to a search path by setting only the application search path input variable.

For example, if you set DTSPSYSAPPHOSTS as follows:

export DTSPSYSAPPHOSTS=servera:

then the search paths are affected as shown in Table 9-3.

Table 9-3 Affected Search Paths

Search Path 

Directory Added to Search Path 

Applications 

servera:/etc/dt/appconfig/appmanager/language

Database 

servera:/etc/dt/appconfig/types/language

Icon 

servera:/etc/dt/appconfig/icons/language

Help 

servera:/etc/dt/appconfig/help/language

Similarly, if you set DTSPSYSAPPHOSTS as follows:

export DTSPSYSAPPHOSTS=/projects1/apps

then the search paths are affected as shown in Table 9-4 .

Table 9-4 Affected Search Paths

Search Path 

Directory Added to Search Path 

Applications 

/projects1/apps/appmanager/language

Database 

/projects1/apps/types/language

Icon 

/projects1/apps/icons/language

Help 

/projects1/apps/help/language

Database (Action/Data Types) Search Path

The database search path directs the desktop to search specified locations for files containing:

Default Database Search Path

The default database search path includes personal, system-wide, and built-in locations. The default language is C.

Personal location--HomeDirectory/.dt/types

System-wide location--/etc/dt/appconfig/types/language

Built-in location--/usr/dt/appconfig/types/language

How the Application Search Path Affects the Database Search Path

When a location is added to the application search path, the appropriate database subdirectory is automatically added to the database search path (see "How the Application Search Path Affects the Database, Icon, and Help Search Paths").

For example, if the application server hosta: is added to the application search path, the directory hosta:/etc/dt/appconfig/types/language is automatically added to the database search path.

Database Search Path Environment Variables

The database search path is assembled from the built-in locations and the following input variables:

DTSPSYSDATABASEHOSTS--system-wide database search path input variable

DTSPUSERDATABASEHOSTS--personal database search path input variable

Use these input variables to specify locations outside the application search path.

The assembled database search path is specified by the output variable DTDATABASESEARCHPATH.

Syntax for the Database Search Path Input Variables

The syntax for the variables DTSPSYSDATABASEHOSTS and DTSPUSERDATABASEHOSTS is:

VARIABLE=location [,location...]

where location can have the syntax:

/path--specifies a directory on the local (session server) system. Use this syntax to add a local directory.

hostname:--specifies the system-wide directory /etc/dt/appconfig/types/language on system hostname.

hostname:/path--specifies a directory on the remote system hostname.

How the Database Search Path Is Assembled

The value of the database search path (DTDATABASESEARCHPATH) is created by assembling the following locations, listed in order of precedence:

Icon Search Path

The icon search path directs the desktop to search specified locations for files containing bitmap and pixmap image files used by the desktop.

Default Icon Search Path

The default icon search path includes personal, system-wide, and built-in locations. The default language is C.

Personal location--HomeDirectory/.dt/icons

System-wide location--/etc/dt/appconfig/icons/language

Built-in location--/usr/dt/appconfig/icons/language

How the Application Search Path Affects the Icon Search Path

When a location is added to the application search path, the appropriate icon subdirectory is automatically added to the icon search path (see "How the Application Search Path Affects the Database, Icon, and Help Search Paths").

For example, if the application server hosta: is added to the application search path, the directory hosta:/etc/dt/appconfig/icons/language is automatically added to the icon search path.

Icon Search Path Environment Variables

The database search path is assembled from the built-in locations and the following input variables:

DTSPSYSICON--system-wide icon search path input variable

DTSPUSERICON--personal icon search path input variable

Use these input variables to specify locations outside the application search path.

The assembled database search path is specified by two output variables:

XMICONSEARCHPATH--used by color displays

XMICONBMSEARCHPATH--used by monochrome displays

Syntax for the Icon Search Path Input Variables

The syntax for the variables DTSPSYSICON and DTSPUSERICON is:

VARIABLE=location [,location...]

where location can have the syntax:

/path--specifies a directory on the local (session server) system. Use this syntax to add a local directory.

To specify a location on another system, use its network file name--for example, /nfs/servera/projects/icons.

How the Icon Search Path Is Assembled

The value of the icon search path (XMICONSEARCHPATH and XMICONBMSEARCHPATH) is created by assembling the following locations, listed in order of precedence:

Help Search Path

The help search path directs the desktop to search specified locations for files containing help information that will be registered on your system.

Default Help Search Path

The default help search path includes personal, system-wide, and built-in locations. The default language is C.

Personal location--HomeDirectory/.dt/help

System-wide location--/etc/dt/appconfig/help/language

Built-in location--/usr/dt/appconfig/help/language

How the Application Search Path Affects the Help Search Path

When a location is added to the application search path, the appropriate help subdirectory is automatically added to the help search path (see "How the Application Search Path Affects the Database, Icon, and Help Search Paths").

For example, if the application server hosta: is added to the application search path, the directory hosta:/etc/dt/appconfig/help/language is automatically added to the help search path.

Help Search Path Environment Variables

The help search path is assembled from the built-in locations and the following input variables:

DTSPSYSHELP--system-wide help search path input variable

DTSPUSERHELP--personal help search path input variable

Use these input variables to specify locations outside the application search path.

The assembled database search path is specified by the output variable DTHELPSEARCHPATH.

Syntax for the Help Search Path Input Variables

The syntax for the variables DTSPSYSHELP and DTSPUSERHELP is:

VARIABLE=location [,location...]

where location can have the syntax:

/path--specifies a directory on the local (session server) system. Use this syntax to add a local directory.

To specify a location on another system, use its network file name--for example, /nfs/servera/projects/help.

How the Help Search Path Is Assembled

The value of the help search path (DTHELPSEARCHPATH) is created by assembling the following locations, listed in order of precedence:

Localized Search Paths

The output variables include entries for both localized and default (C) locations.

For example, the default application search path is:

HomeDirectory/.dt/appmanager
 /etc/dt/appconfig/appmanager/language
 /etc/dt/appconfig/appmanager/C
 /usr/dt/appconfig/appmanager/language
 /usr/dt/appconfig/appmanager/C

where language is the value of the LANG environment variable.

For each scope (system-wide and built-in), the language-specific location has precedence over the default location.