Manually add DE/WM to login selection?

In openSUSE 11.1, how would I add a customized desktop environment/window manager/X session to the list of selectable logins? So far, I have GNOME, KDE4, TWM, wmii2, and IceWM available from GDM. But I’d like an alternate GNOME with Icewm replacing metacity for the window manager, while still being able to login to the original GNOME. Or Icewm+Nautilus desktop. So, from GDM I’d have a choice of GNOME, GNOME + IceWM, IceWM, IceWM + Nautilus, etc.

The last time I did this was on another Linux distro and earlier X version; things seem different here.

My guess is
yast2-system-/etc/sysconfig editor-desktop-window manager
Or customize by adding a new window manager script in the /usr/share/xsessions

Where does the list of possible window managers in “DEFAULT_WM” come from? I have startkde3 despite not installing KDE3. Also, icewm is missing despite its installation and use (it’s an option from GDM and KDM).

I’m guessing those options were included by default install but not usable until you install the base package to run your de. Look in the /etc/sysconfig. With icewm I can see it in /usr/share/xsessions though kde3 is not because i did not install it. Mine has xfce, icewm, twm, kde4 and gnome. Maybe an expert can chime in and explain to us.

I see what you mean about /usr/share/xsessions. But the files there are .desktop, using the freedesktop.org specification? I wouldn’t know how to build an environment within such a file, but writing out a .xinitrc-like script, then referencing that from an appropriately named file in /usr/share/xsession/ might suffice.

Things have changed since the last time I tried this! Then, each desktop had a readable, plaintext xinitrc script in /etc/X11/xinit/, so I just combined the parts I wanted into a new xinitrc with a unique title.