xwn740 x-windows configuring and using session / window managers desktop environments (chapter 8:...

18
XWN740 X-Windows Configuring and Using Session / Window Managers Desktop Environments (Chapter 8: Pages 118-132)

Upload: calvin-dean

Post on 13-Dec-2015

233 views

Category:

Documents


0 download

TRANSCRIPT

XWN740

X-WindowsConfiguring and Using

Session / Window ManagersDesktop Environments

(Chapter 8: Pages 118-132)

Agenda

Session / Window Managers

Desktop Environments: Session Managers Virtual Desktops Desktop Environments Window Managers

Running Windows Manager Alone

X Windows Layers

X Windows comes in layers. Some layers are required - some are optional...

A DISPLAY MANAGER allows selection of user (possibly type of Desktop Environment) and to provide authentication

Some Display Managers are started in /etc/inittab file, others are started by startup scripts

X Windows Layers

We will now focus on the remaining 3 levels:

Session ManagerWindow ManagerDesktop Environment

We can mix and match these layers to provide the clients / employer with a customized graphical environment.

Session Managers

A session manager (SM) is responsible for saving and restoring the session state; this allows the user to log out and later log in, and to find—more or less—the same programs running.

The state information can include the window position, open files, cursor position, and so forth.

If the session manager finds that no previous session has been saved, a default session can be started.

Session Managers

A protocol named X Session Management Protocol (XSMP) specifies how applications and session managers interact.

Of particular importance is that the window manager is able to communicate with the session manager, as the window manager is responsible for the placement of windows and the existence of icons.

Session Managers

At the beginning of a session, the SM starts clients that have a saved state. To enable communication with the session manager, clients are passed a connection string in the SESSION_MANAGER environment variable.

This takes one of two forms:

tcp/hostname:portlocal/hostname:path

Session Managers

When an XSMP-aware client starts, it connects to the SM and introduces itself. The SM assigns a unique ID number, and the client informs the SM of the command line that will start it with the same ID number.

It's also possible for clients to ask to be restarted if they terminate unexpectedly, or to save their state and ask to be restarted in the next session even if they are not running at the end of the current session.

Session Managers

KDE and GNOME each provide session managers.

The standard X distribution also provides a session manager, known as xsm, but it is NOT commonly used...

Window Manager

A Window Manager manages window placement and provides window decorations. This includes window title bars, borders, and controls for common operations such as resizing, maximizing, minimizing, moving, and closing windows.

There are different window Managers available to the X Windows system that provide flexibility in terms of function versus system performance(also referred to as “overhead”).

msaul linux >

Window Manager

  Examples of Window Managers include:

Metacity (Motif) Window Manager (mwm) Enlightenment (enlightenment) Tab Window Manager (twm) Virtual Tab Window Manager (vtwm) Window Maker (wmaker) Ice Window Manager (icewm)

Note: Each window manager has its own set of rules and format for window decorations...

Virtual Desktops

Many of the current window managers providevirtual desktop or workspace capability—the ability to access a desktop space that is a multiple of the screen size.

For example, a window manager configured with four virtual desktops would permit you to move with the mouse or keyboard from one of the four desktops to another.

Windows managed on multiple virtual desktops do not take significantly more resources than windows managed on a single desktop

Virtual Desktops

There are two different ways to create virtual desktops:

  Mapping Windows are mapped (made visible) or unmapped (hidden)

according to whether the desktop they are "on" is the current desktop.

  Positioning Windows are positioned relative to the current desktop; if

they are on a desktop to the right of the current desktop, then they are positioned to the right of the visible screen area, off the screen.

Virtual Desktops

When the virtual desktop illusion is created by window positions, it is possible to have the current desktop positioned between virtual desktops, so that parts of two or more virtual desktops are visible simultaneously.

It's also possible to have windowsspan virtual desktops.

Desktop Environments

As mentioned in previous lessons, the role of the Desktop environment is to provide the user with additional features while running an X Windows session.

There features that may include menus to start programs, trays or panels to indicate currently running programs, icons that represent files or programs on the desktop background, docked applets, and other useful tools and utilities.

Desktop Environments

There are many Desktop environments that are available for download and installation including:

Gnome KDE Xfce Workbench Enlightenment Windowmaker

Most commonly used...

There is sometimes confusion between a window manager and a desktop environment. Some desktop environments consist of a window manager, or bundle a suite of programs including the window manager...

Starting SM, WM, DE

By now, you should realize that rules for starting DM, SM, WM, DE (Desktop Environment) are started from a configuration file and/or a script file.

The location of these files usually depends on the Linux distribution you are currently using, and the type of Desktop / Window Manager that is installed...

Refer to X Power Tools Chapter 8 sections 8.4, 8.5, and 8.6 for examples involving Gnome, KDE, & Xfce

Window Manger Only

Useful for keeping overhead down for performance (for example: a KIOSK)

A script can be used to specify the type of MW and which clients to then start.

Refer to X Power Tools Chapter 8 section 8.7 for and example of creating a customized shells script and running startx with this script...