renegade-dressmaker

HOWTO: Add Non-CDE Window Managers to CDE's Dtlogin

TRANSLATIONS:

Belorussian translation provided by Fatcow by Paul Bukhovko

German translation by Aleksandr Kastromin

Russian translation by Sandi Wolfe (See also: http://www.opensourceinitiative.net/edu/)

Czech translation by Andrijana Savicević

UPDATE: How To Get Rid Of The Login Splash Screen

The one and only question that I am ever asked is this: "When I log in, I see 'Starting the openwindows desktop', how can I make that go away?" Unfortunately, my answer has always been, 'I don't know, nothing I have tried has worked.' That is, until now. Thanks to David Zanella I now have something useful to pass along. Here's what you do:
  1. Open /usr/dt/bin/Xresources in your favorite editor.
  2. Look for lines that contain "dtstart_hello[0]", and comment them out.
As an example:
#
# Session startup clients and args
#
if [ "$SESSIONTYPE" = "altDt" ]; then
      dtstart_session[0]="$SDT_ALT_SESSION"
#      dtstart_hello[0]="$SDT_ALT_HELLO"
else
      dtstart_session[0]="$DT_BINPATH/dtsession"
#      dtstart_hello[0]="$DT_BINPATH/dthello &"
fi
Check it out, give it a try, and let me know how it goes.

OLD: The Original HOWTO page


The original HOWTO is located here.

ah4 class=news>NEW: make-dtlogin Shell Script
Tired of trying to figure out how to add logins to CDE's Dtlogin manager?
Tired of pulling out your hair trying to figure out the HOWTO instructions?

Let my new CDE DtLogin Creator script do it for you:

make-dtlogin (The Script)

make-dtlogin-1.1-1-sol2-sparc-usr.gz (The datastream-format Solaris package -- installs in /usr/bin by default)

What you will need:
What you get:
Answer a few simple questions and make-dtlogin will present you with a Solaris datastream package file in /var/spool/pkg/. This allows you to add the configuration files to and remove the configuration files from the system with ease using Solaris' regular package management commands. Add the files using /usr/sbin/pkgadd and then type "/etc/init.d/dtlogin reset", and when dtlogin comes back up you should see your new login appear under "Options" --> "Session" menu.

Robustness:
I have gone to great lengths to try to make sure that make-dtlogin is robust and foolproof. The make-dtlogin script will:
Now how cool is that?

An Example:
Here is an example session. Characters in white-bold are what I typed. ([enter] means that I pressed the return key.)
ls
KDE.gif  KDE.xbm  KDE.xcf  KDE.xpm

make-dtlogin

CDE DtLogin Creator

This script will ask you a few questions about what kind of window manager you
would like to add to the CDE login screen, and then it will generate a Solaris
package datastream file for you that contains the new setup.

Before we begin, you will need the following:

1) A name for your new CDE login session. (Ex: FVWM)
2) The complete path to your window manager program. (Ex: /usr/local/bin/fvwm2)
3) Two 237x237 graphics files, one in XPM format, the other in XBM format.
4) If you intend to run the SSH agent along with your window manager, then you
   will need to know the full pathname to the ssh-agent program.  (Ex:
   /usr/bin/ssh-agent)

You should use your favorite graphics editor (such as the Gimp) to create a
pair of files to use as the logo for your new login.  (Your logos can look
like whatever you want, but you can also take a look at the files in
/usr/dt/appconfig/icons/C/ for examples.)

At any prompt, you may enter '?' for help, or 'q' to quit.

Are you ready to continue? (y/n/q/?) [y]: ?
        If you can meet the above requirements then answer yes.  That is, if
        you have chosen a name for your login session, you know the complete
        path to your window manager (and optionally to your ssh-agent), and
        you have two, 237x237 graphics files, one in XPM format and the other
        in XBM format, then answer yes.  Otherwise answer no to exit the
        script and re-run it later when you are ready.

Are you ready to continue? (y/n/q/?) [y]: [enter]

What name would you like to use for this login? KDE-3.x

Generating filenames...
- /etc/dt/appconfig/icons/C/KDE-3.x-logo.pm
- /etc/dt/appconfig/icons/C/KDE-3.x-logo.bm
- /etc/dt/config/C/Xresources.d/Xresources.KDE-3.x
- /etc/dt/config/Xsession.KDE-3.x-phase1
- /etc/dt/config/Xsession.KDE-3.x-phase2
- /etc/dt/config/Xinitrc.KDE-3.x

Generating package name...
- Package Name: DtKDE3x

If you agree with the given package name, simply press
return, or enter your own package name below.

Package name for KDE-3.x CDE login? [DtKDE3x]: [enter]

Checking filenames...

Checking package name...


What is the full path to the XPM graphic logo file? ./KDE.gif

./KDE.gif does not appear to be a valid XPM graphics file, continue? (y/n/q/?)
[n]: [enter]
Okay, let's try again then.

What is the full path to the XPM graphic logo file? ./KDE.xpm

What is the full path to the XBM graphic logo file? ./KDE.xbm

What is the full path to the window manager program? /usr/local/bin/startkde

Would you like to run the SSH agent inline with this window manager? 
(y/n/q/?) [y]: [enter]

What is the full path to the ssh-agent program? /usr/bin/ssh-agent



Okay, here's what I have for your new CDE login:

Session name: KDE-3.x
XPM graphic logo: ./KDE.xpm
XBM graphic logo: ./KDE.xbm
Window manager: /usr/local/bin/startkde
Use SSH's ssh-agent along with the window manager: y
ssh-agent: /usr/bin/ssh-agent




Is the above information correct? (y/n/?) [y]: [enter]



Creating package...
- Creating package in /tmp
- Making /tmp/DtKDE3x
- Making /tmp/DtKDE3x/etc
- Making /tmp/DtKDE3x/etc/dt
- Making /tmp/DtKDE3x/etc/dt/appconfig
- Making /tmp/DtKDE3x/etc/dt/appconfig/icons
- Making /tmp/DtKDE3x/etc/dt/appconfig/icons/C
- Making /tmp/DtKDE3x/etc/dt/config
- Making /tmp/DtKDE3x/etc/dt/config/C
- Making /tmp/DtKDE3x/etc/dt/config/C/Xresources.d
- Copying ./KDE.xpm
  to /tmp/DtKDE3x/etc/dt/appconfig/icons/C/KDE-3.x-logo.pm
- Copying ./KDE.xbm
  to /tmp/DtKDE3x/etc/dt/appconfig/icons/C/KDE-3.x-logo.bm
- Creating
  /tmp/DtKDE3x//etc/dt/config/C/Xresources.d/Xresources.KDE-3.x
- Creating
  /tmp/DtKDE3x//etc/dt/config/Xsession.KDE-3.x-phase1
- Creating
  /tmp/DtKDE3x//etc/dt/config/Xsession.KDE-3.x-phase2
- Creating
  /tmp/DtKDE3x//etc/dt/config/Xinitrc.KDE-3.x
- Creating /tmp/DtKDE3x/checkinstall
- Creating pkginfo file
- Creating prototype file
- Creating package spool directory
## Building pkgmap from package prototype file.
## Processing pkginfo file.
## Attempting to volumize 14 entries in pkgmap.
part  1 -- 240 blocks, 19 entries
## Packaging one part.
/var/spool/pkg/DtKDE3x/pkgmap
/var/spool/pkg/DtKDE3x/pkginfo
/var/spool/pkg/DtKDE3x/install/checkinstall
/var/spool/pkg/DtKDE3x/reloc/etc/dt/appconfig/icons/C/KDE-3.x-logo.bm
/var/spool/pkg/DtKDE3x/reloc/etc/dt/appconfig/icons/C/KDE-3.x-logo.pm
/var/spool/pkg/DtKDE3x/reloc/etc/dt/config/C/Xresources.d/Xresources.KDE-3.x
/var/spool/pkg/DtKDE3x/reloc/etc/dt/config/Xinitrc.KDE-3.x
/var/spool/pkg/DtKDE3x/reloc/etc/dt/config/Xsession.KDE-3.x-phase1
/var/spool/pkg/DtKDE3x/reloc/etc/dt/config/Xsession.KDE-3.x-phase2
## Validating control scripts.
## Packaging complete.
- Transfering spool directory to datastream file
Transferring <DtKDE3x> package instance
- Checking datastream file: /var/spool/pkg/DtKDE3x-Solaris-root
Checking uninstalled stream format package <DtKDE3x> from </var/spool/pkg/DtKDE3x-Solaris-root>
## Checking control scripts.
## Checking package objects.
## Checking is complete.
- Removing /tmp/DtKDE3x
- Removing /var/spool/pkg/DtKDE3x

Done.

There is now a file on this host named:

        /var/spool/pkg/DtKDE3x-Solaris-root
        
This file is a datastream-format Solaris package that contains your new CDE
login session setup.  To install this file, type:

        pkgadd -d /var/spool/pkg/DtKDE3x-Solaris-root DtKDE3x

And then notify dtlogin of the changes by selecting "Options" from the dtlogin
screen and then "Reset Login Screen" from the Options pull-down menu.

After this, you should be able to click on "Options" from the dtlogin screen,
and then "Session" from the Options pull-down menu to see your new CDE login
(which will be listed as "KDE-3.x").

cd /var/spool/pkg/
ls -al
total 244
drwxrwxrwt   2 root     bin          512 Mar  7 10:58 .
drwxr-xr-x  10 root     bin          512 Feb 18  2002 ..
-rw-r--r--   1 root     other     112640 Mar  7 10:58 DtKDE3x-Solaris-root

pkgchk -l -d `pwd`/DtKDE3x-* DtKDE3x
Checking uninstalled stream format package <DtKDE3x> from </var/spool/pkg/DtKDE3x-Solaris-root>
## Checking control scripts.
## Checking package objects.
Pathname: checkinstall
Type: installation file
Expected file size (bytes): 1593
Expected sum(1) of contents: 63377
Expected last modification: Mar 07 10:58:43 2003

Pathname: etc
Type: directory
Expected mode: 0755
Expected owner: root
Expected group: sys
Current status: installed

Pathname: etc/dt
Type: directory
Expected mode: 0755
Expected owner: root
Expected group: root
Current status: installed

Pathname: etc/dt/appconfig
Type: directory
Expected mode: 0755
Expected owner: root
Expected group: root
Current status: installed

Pathname: etc/dt/appconfig/icons
Type: directory
Expected mode: 0755
Expected owner: bin
Expected group: bin
Current status: installed

Pathname: etc/dt/appconfig/icons/C
Type: directory
Expected mode: 0755
Expected owner: bin
Expected group: bin
Current status: installed

Pathname: etc/dt/appconfig/icons/C/KDE-3.x-logo.bm
Type: regular file
Expected mode: 0644
Expected owner: root
Expected group: other
Expected file size (bytes): 44513
Expected sum(1) of contents: 8650
Expected last modification: Mar 07 10:58:43 2003
Current status: installed

Pathname: etc/dt/appconfig/icons/C/KDE-3.x-logo.pm
Type: regular file
Expected mode: 0644
Expected owner: root
Expected group: other
Expected file size (bytes): 58144
Expected sum(1) of contents: 57476
Expected last modification: Mar 07 10:58:43 2003
Current status: installed

Pathname: etc/dt/config
Type: directory
Expected mode: 0755
Expected owner: root
Expected group: bin
Current status: installed

Pathname: etc/dt/config/C
Type: directory
Expected mode: 0755
Expected owner: root
Expected group: bin
Current status: installed

Pathname: etc/dt/config/C/Xresources.d
Type: directory
Expected mode: 0755
Expected owner: root
Expected group: bin
Current status: installed

Pathname: etc/dt/config/C/Xresources.d/Xresources.KDE-3.x
Type: regular file
Expected mode: 0444
Expected owner: bin
Expected group: bin
Expected file size (bytes): 194
Expected sum(1) of contents: 16849
Expected last modification: Mar 07 10:58:43 2003
Current status: installed

Pathname: etc/dt/config/Xinitrc.KDE-3.x
Type: regular file
Expected mode: 0444
Expected owner: bin
Expected group: bin
Expected file size (bytes): 391
Expected sum(1) of contents: 32144
Expected last modification: Mar 07 10:58:43 2003
Current status: installed

Pathname: etc/dt/config/Xsession.KDE-3.x-phase1
Type: regular file
Expected mode: 0555
Expected owner: bin
Expected group: bin
Expected file size (bytes): 971
Expected sum(1) of contents: 9644
Expected last modification: Mar 07 10:58:43 2003
Current status: installed

Pathname: etc/dt/config/Xsession.KDE-3.x-phase2
Type: regular file
Expected mode: 0555
Expected owner: bin
Expected group: bin
Expected file size (bytes): 862
Expected sum(1) of contents: 508
Expected last modification: Mar 07 10:58:43 2003
Current status: installed

Pathname: pkginfo
Type: installation file
Expected file size (bytes): 157
Expected sum(1) of contents: 11987
Expected last modification: Mar 07 10:58:43 2003

## Checking is complete.



Disclaimer: I take no responsibility what so ever for any damages that result from the use or misuse of the make-dtlogin script.