Get Your Default KDE and GNOME Desktops in Line
by David D. Scribner

As mentioned in my last article, Get Your Default KDE and GNOME Menus in Line, the User Manuals for the KDE and GNOME GUI environments include instructions on modifying the user's menus and desktop properties. Just as with the menus however, modifications to the desktop settings made by individual users are stored in the user's home directory and have no affect on the "defaults" installed for new users.

Being the system administrator, you may have custom desktop wallpaper, shortcut icons and panel (or Kicker, as KDE now calls it) icons that differ from those set up in the default configurations. If you wish to have the default desktops installed for new users tailored to include selected application icons in the panel or kicker (taskbar), or changes to the default desktop shortcuts, background, colors or style that GNOME and KDE normally set up for those new users, you will have to make a few modifications.

This article is intended to cover the basic tasks of customizing such default installations. Since customizing the default desktops for your new users result in changes to the installed files, back up any of these files/directories before proceeding with any modifications!

Desktop Configuration Skeletons

Items pertaining to the desktop you want your new users to be greeted with are perhaps easiest to configure by placing the relevant KDE and GNOME desktop configuration files in the /etc/skel directory. You could modify the master files KDE and GNOME use to create new user setups, but they may be overwritten should you upgrade to a newer version of the environment. To keep your administration tasks simple, utilize the convenience /etc/skel offers.

The /etc/skel directory holds the files and directories that will be copied over to a new user's home directory when created by the system. Your administration needs might warrant keeping more than one configuration on hand, in which case variations could be stored elsewhere and copied over to the user's home directory manually or with a script as needed.

Not all settings, files and directories created by KDE and GNOME during a fresh setup for new users need to be included in the /etc/skel directory, as when a new user starts GNOME or KDE for the first time, the remaining files needed by the environment will be created. Fortunately, the files previously copied over from /etc/skel during the user account creation won't be overwritten, allowing you to tweak and customize many of those "default" settings to your particular needs.

The environment's desktop configuration information in a stock Red Hat 7.1 installation with GNOME 1.4 and KDE 2.1 for example, are usually found in the user's home directory, and in the following subdirectories:

KDE Personal Directories
  ~/.kde
  ~/.kde/Autostart
  ~/Desktop
GNOME Personal Directories
  ~/.gnome
  ~/.gnome-desktop
  ~/.sawfish
  ~/.netscape (if Netscape Navigator is chosen as the default browser)

To create a desktop skeleton to work with, first create a dummy user account, then login as that user and configure your base using the GNOME or KDE Control Center. Once this has been done, the necessary directories and files created can be copied over to /etc/skel, ownership changed to root and permissions set to 0644. If you have to experiment and fiddle with various desktop settings before coming up with a suitable "default" of your own, make a note of those settings and apply them to a newly created account to keep your skeleton trim. Don't forget to delete any dummy user accounts created when you're done.

In the following sections I'll cover a few of the desktop items you might wish to customize and include as part of your skeleton arrangement.

Desktop "Shortcuts"

Because of its visual prominence, the desktop is great area for icon-links (shortcuts) introducing general help, reference material and policies a company has available for new users. Even though many of these shortcuts should also be included in your menu tree, placement on the desktop helps make them "hard to miss" for new users.

For example, many companies have employee manuals, forms or other documents that new users should have available to them when starting a new position. If your company had the foresight to make them available them online, they are prime candidates for desktop shortcuts. You may also want to place shortcuts according to department or group if you have specific applications they use regularly, leaving the links in the panel for common applications used by all.

Although both KDE and GNOME include a default set of desktop icons linked to various documents, URLs, applications and devices, you may wish to modify or create additional links in these directories for items you want to appear on the user's desktop when the chosen environment is started for the first time. KDE keeps these desktop shortcuts in ~/Desktop, and GNOME keeps them in ~/.gnome-desktop.

KDE Desktop Settings

Various KDE desktop configuration information is kept in "*rc" (run commands, or resource) files located in the ~/.kde/share/config directory. Other configuration files can also be found in the subdirectories of ~/.kde/share/apps. In the previous article on customizing your system's default menus, I mentioned many of the *.desktop and .directory files found on a system with stock KDE and GNOME environments include variables for multiple languages. You may also find multi-language variables listed in some of the *rc files listed below. If you're pinching resources and trimming fat, you might take a look at these, too, and delete any unnecessary lines.

GNOME Desktop Settings

Various GNOME desktop configuration information is kept in the ~/.gnome and ~./gnome-desktop directories. Since GNOME also uses Sawfish as its default window manager, other configuration files can also be found in the ~/.sawfish subdirectory.

There may be other applications or window managers that you will want to use in combination with the KDE and GNOME desktop environments. Although they are outside the scope of this article, configuration is usually similar in that the user directories for that package are usually hidden, and reside in the user's home directory. Once configured and the files located, the directories and the necessary files they contain can be copied over to your skeleton layout in /etc/skel. More information on the syntax and layout of *.desktop files for developers can be found at freedesktop.org's Desktop Entry Standard web page.

Hopefully this article has helped you get your default KDE and GNOME desktops in line for your new user setups. When combined with a custom-structured menu system tailored to your company's needs, you're well on your way in presenting a professional Linux GUI environment to welcome your new users!