Im running openSUSE Tumbleweed with KDE 4.7.0 and i want to install Gnome3 as a second desktop option at login menu, for me to explore and learn. I know the Gnome 3 repo is this [Index of /repositories/GNOME:/STABLE:/3.0/openSUSE_11.4](http://download.opensuse.org/repositories/GNOME:/STABLE:/3.0/openSUSE_11.4/) and the apps repo exists as well Index of /repositories/GNOME:/Apps/openSUSE_11.4+GNOME_STABLE_3.0
I dont use network manager for my internet connection because i own a router and i use ifup with dhcp4. To install it i just add the repos and run zypper dup ? or are there any other settings to adjust so i don`t end up with a broken system(regarding to the kdm service that starts KDE, i suspect that a gdm daemon will be created as well…) ?
If you are running Tumbleweed, you need to use the relevant Tumbleweed repos - see Index of /repositories/openSUSE:/Tumbleweed:/GNOME/openSUSE_Tumbleweed
It’s probably not something I would do, but there we are.
Add the repo and use the package switcher in software management would be the way to go, if you must.
john_hudson: thank you i did not found that first time looking 
caf4926: why not ?
*Because experience tells me it’s likely to be both complicated and risky. Especially considering the info provided about your installation. (I’m not saying it can’t be done though)
*And because I have the space, I’d just create a partition for pure gnome 3
Consider making / keeping backups of your important files.
Partition your HD if you can and make separate installations.
Keep a default installation of 11.4 for everyday business use and separate the development and testing versions to partitions.
But of course, if none of the above matters and you can throw all caution to the wind. Go ahead and enjoy.
Like another ext4 partition that will have gnome on it ?
Im aware of the risks thats why i`m asking for an advice from the forums users about this. Thank you for the advices until now .
Like another ext4 partition that will have gnome on it ?
Yes indeed, that is what I mean.
Ok, thank you for all of your advices 
While there’s certainly no harm in putting GNOME on a separate partition, I’ve run both KDE and GNOME side by side for years. I choose what desktop to log into using the Session Type option. I have at different points used separate KDE and GNOME users (especially in the transition from KDE 3.x to 4.x!), but I don’t know that I’ve ever run into a substantive issue regardless of configuration.
I was thinking of using chroot, is that a good option ?
MMcCallister: what about the daemon kdm that starts when the system is booted? wont that be affected ? wont a gdm like daemon be started too?
After reading this thread, seeing the pros and cons i think i have an idea on how to avoid system mix up when havin` Gnome and KDE installed under the same partition.
As a kde user when i boot openSUSE i can see that service kdm starts and after it the login prompt appears in order for me to login, with username and
password. My idea on this is to start the DE service daemon manually using sudo.
After looking in System Services (Runlevel) i have found 2 services:
- kde ksysguardd - what role does it have ?
- xdm - X Display Manager that starts in runlevel 5 (i suppose this starts KDE for me)
When doing pico xdm inside /etc/init.d/ i can see that the program is looking for DE`s to start:
......
XDMDIR=/etc/X11/xdm
if -x /usr/bin/xdm ]; then
XDM_BIN=/usr/bin/xdm
else
XDM_BIN=/usr/X11R6/bin/xdm
fi
if -x /usr/sbin/gdm ]; then
GDM_BIN=/usr/sbin/gdm
else
GDM_BIN=/opt/gnome/sbin/gdm
fi
KDM_BIN=/opt/kde3/bin/kdm
KDM4_BIN=/usr/bin/kdm
WDM_BIN=/usr/bin/wdm
SLIM_BIN=/usr/bin/slim
LXDM_BIN=/usr/bin/lxdm
......
I`m not much of a programmer but i wonder if is possible to create a second xdm file that will start only gnome 2 or 3 named lets say xdm-gnome, without the lines that searches after KDE ? For this i need the name of
the Gnome service daemon (like mine for KDE is kdm) if this is different under Gnome 2 or 3. Inside the first xdm file named lets say xdm-kde, i was thinking to delete the lines for gdm(Gnome).
I did scrolled the entire file, but i want to be sure that i did not missed anything, can someone tell me exactly what to remove from it to stop xdm to search for kdm(KDE) and what lines to remove to stop xdm to look after gdm(Gnome2/3).
What do you guys think about this ?
PS: of course that a backup of xdm will also exist 
Here is the content of my xdm file:
#! /bin/bash
# Copyright (c) 1996-2002 SuSE Linux AG, Nuernberg, Germany.
# All rights reserved.
#
# Author: Florian La Roche, 1996
# Werner Fink <werner@suse.de>, 1996,98,99
# Martin Scherbaum, 1997
# Reinhard Max <max@suse.de>, 1997
#
# Please send feedback to [Portal:Distribution - openSUSE](http://www.suse.de/feedback)
#
# /etc/init.d/xdm
#
### BEGIN INIT INFO
# Provides: xdm
# Required-Start: $remote_fs dbus
# Required-Stop: $remote_fs
# Should-Start: ypbind $syslog gpm firstboot kbd resmgr earlyxdm winbind acpid
# Should-Stop: ypbind $syslog gpm firstboot kbd resmgr earlyxdm winbind acpid
# Default-Start: 5
# Default-Stop:
# Description: X Display Manager
### END INIT INFO
. /etc/rc.status
. /etc/sysconfig/displaymanager
. /etc/sysconfig/language
. /etc/sysconfig/windowmanager
test -e /etc/SuSEconfig/profile && . /etc/SuSEconfig/profile
test -r /etc/profile.d/desktop-data.sh && . /etc/profile.d/desktop-data.sh
locale_vars=" \
LANG \
LC_CTYPE \
LC_NUMERIC \
LC_TIME \
LC_COLLATE \
LC_MONETARY \
LC_MESSAGES \
LC_PAPER \
LC_NAME \
LC_ADDRESS \
LC_TELEPHONE \
LC_MEASUREMENT \
LC_IDENTIFICATION \
LC_ALL"
unset LC_ALL
for lc in $locale_vars
do
eval val="\$RC_$lc"
if test -n "$val"; then
eval $lc="\$RC_$lc"
export $lc
fi
done
unset lc val
if test -z "$WINDOWMANAGER" ; then
SAVEPATH=$PATH
PATH=$PATH:/usr/X11R6/bin:/usr/openwin/bin
desktop=/usr/share/xsessions/${DEFAULT_WM}.desktop
if test -s "$desktop" ; then
while read -r line; do
case ${line} in
Exec=*) WINDOWMANAGER="$(command -v ${line#Exec=})"
break
esac
done < $desktop
fi
if test -n "$DEFAULT_WM" -a -z "$WINDOWMANAGER" ; then
WINDOWMANAGER="$(command -v ${DEFAULT_WM##*/})"
fi
PATH=$SAVEPATH
unset SAVEPATH desktop
fi
unset DEFAULT_WM
export WINDOWMANAGER
XDM_PIDFILE="/var/run/xdm.pid"
KDM_PIDFILE="/var/run/kdm.pid"
GDM_PIDFILE="/var/run/gdm.pid"
SLIM_PIDFILE="/var/run/slim.lock"
LXDM_PIDFILE="/var/run/lxdm.pid"
ENTRANCE_PIDFILE="/var/run/entrance.pid"
PIDFILE=$XDM_PIDFILE
KDEROOTHOME=/root/.kdm
export KDEROOTHOME
XDMDIR=/etc/X11/xdm
if -x /usr/bin/xdm ]; then
XDM_BIN=/usr/bin/xdm
else
XDM_BIN=/usr/X11R6/bin/xdm
fi
if -x /usr/sbin/gdm ]; then
GDM_BIN=/usr/sbin/gdm
else
GDM_BIN=/opt/gnome/sbin/gdm
fi
KDM_BIN=/opt/kde3/bin/kdm
KDM4_BIN=/usr/bin/kdm
WDM_BIN=/usr/bin/wdm
SLIM_BIN=/usr/bin/slim
LXDM_BIN=/usr/bin/lxdm
ENTRANCE_BIN=/usr/sbin/entranced
RELOADSIGNAL="-HUP"
DM=${DISPLAYMANAGER##*/}
case "${DM}" in
kdm3) DISPLAYMANAGER=$KDM_BIN
PIDFILE=$KDM_PIDFILE
;;
kdm|kde|KDM|KDE) DISPLAYMANAGER=$KDM_BIN
if ! -r "$DISPLAYMANAGER" ]; then
DISPLAYMANAGER=$KDM4_BIN
fi
PIDFILE=$KDM_PIDFILE
;;
kdm4) DISPLAYMANAGER=$KDM4_BIN
PIDFILE=$KDM_PIDFILE
;;
xdm) DISPLAYMANAGER=$XDM_BIN
;;
gdm|GDM|Gnome|GNOME) DISPLAYMANAGER=$GDM_BIN
PIDFILE=$GDM_PIDFILE
RELOADSIGNAL="-USR1"
;;
wdm|WDM) DISPLAYMANAGER=$WDM_BIN
;;
slim|SLIM) DISPLAYMANAGER=$SLIM_BIN
XDMOPTIONS=-d
PIDFILE=$SLIM_PIDFILE
;;
lxdm|LXDM) DISPLAYMANAGER=$LXDM_BIN
XDMOPTIONS=-d
PIDFILE=$LXDM_PIDFILE
;;
entrance)
DISPLAYMANAGER=$ENTRANCE_BIN
PIDFILE=$ENTRANCE_PIDFILE
;;
console) exit 0
;;
*) DISPLAYMANAGER=$XDM_BIN
if test -x $KDM_BIN; then
DISPLAYMANAGER=$KDM_BIN
PIDFILE=$KDM_PIDFILE
elif test -x $KDM4_BIN; then
DISPLAYMANAGER=$KDM4_BIN
PIDFILE=$KDM_PIDFILE
fi
;;
esac
test ! -x "$DISPLAYMANAGER" && DISPLAYMANAGER=$XDM_BIN
rc_reset
splashcopy()
{
local from=$1
local to=$2
if "$SPLASH" = yes ]
then
ver=$(sed "s/.*v\(:digit:]]\)\.\(:digit:]]\).*/\\1\\2/" /proc/splash)
if $ver -gt 31 ]
then
echo "copy $from $to" > /proc/splash
echo "@$to silent" > /proc/splash
echo "@$to show -1" > /proc/splash
fi
fi
}
case "$1" in
start)
if "$DISPLAYMANAGER" = "$KDM4_BIN" ] \
|| "$DISPLAYMANAGER" = "$GDM_BIN" ]; then
splashcopy 0 6
fi
# Avoid duplicated messages when earlyxdm is in use
if "$DISPLAYMANAGER" = "$KDM_BIN" -a -s $KDM_PIDFILE ]; then
/sbin/checkproc -p $KDM_PIDFILE $KDM_BIN && rc_exit 0
elif "$DISPLAYMANAGER" = "$KDM4_BIN" -a -s $KDM_PIDFILE ]; then
/sbin/checkproc -p $KDM_PIDFILE $KDM4_BIN && rc_exit 0
elif "$DISPLAYMANAGER" = "$GDM_BIN" -a -s $GDM_PIDFILE ]; then
/sbin/checkproc -p $GDM_PIDFILE $GDM_BIN && rc_exit 0
elif "$DISPLAYMANAGER" = "$ENTRANCE_BIN" -a -s $ENTRANCE_PIDFILE ]; then
/sbin/checkproc -p $ENTRANCE_PIDFILE $ENTRANCE_BIN && rc_exit 0
fi
if "$DISPLAYMANAGER" != "$KDM_BIN" -a \
"$DISPLAYMANAGER" != "$KDM4_BIN" -a \
"$DISPLAYMANAGER" != "$ENTRANCE_BIN" -a \
"$DISPLAYMANAGER" != "$GDM_BIN" ]; then
test -x /etc/X11/xdm/SuSEconfig.xdm && \
MD5DIR="/var/adm/SuSEconfig/md5" \
/etc/X11/xdm/SuSEconfig.xdm | \
sed 's+\(.*\)+/etc/init.d/xdm: \1+g' | \
/bin/logger
fi
# use system keyboard as global X keyboard configuration
if -x /etc/X11/xdm/keytable ]; then
/etc/X11/xdm/keytable
fi
echo -n "Starting service $DM"
# Don't start xdm if no Xserver is configured and xdm is not
# configured for remote access
if ! -x /usr/bin/X -a ! -x /usr/X11R6/bin/X -a \
"$DISPLAYMANAGER_REMOTE_ACCESS" = "no" ]; then
rc_status -u
rc_exit
fi
if "$DISPLAYMANAGER" = "$GDM_BIN" -a \
"$DISPLAYMANAGER_REMOTE_ACCESS" = "yes" -a \
"$DISPLAYMANAGER_STARTS_XSERVER" = "no" ]; then
XDMOPTIONS="--no-console"
fi
# Graphical failsafe mode (Bug #246158).
#
# Needs changes in kernel commandline of "Failsafe" entry in
# /boot/grub/menu.lst.
#
# * use the same "vga" option value as in the non-"Failsafe" entry
# * remove "3" option (runlevel)
# * add "x11failsafe" option
if cat /proc/cmdline | grep -q x11failsafe; then
if -f /etc/X11/xorg.conf.install ]; then
export XORGCONFIG=xorg.conf.install
echo
echo "Using failsafe X.Org configuration /etc/X11/xorg.conf.install"
else
echo
echo "The failsafe X.Org configuration /etc/X11/xorg.conf.install no longer exists."
echo "Either move it back (if still available) or copy /etc/X11/xorg.conf to"
echo "/etc/X11/xorg.conf.install to use the native graphics driver instead of the"
echo "failsafe graphics driver. Of course the latter option no longer can be called"
echo "failsafe."
rc_status -u
rc_exit
fi
fi
startproc -p $PIDFILE $DISPLAYMANAGER $XDMOPTIONS || rc_failed
# After a crash or a kill signal we may have
# a wrong owner ship of /dev/xconsole
if rc_status ; then
if test -x $XDMDIR/TakeDevices ; then
$XDMDIR/TakeDevices
else
chown root:tty /dev/xconsole /dev/tty0
chmod 622 /dev/xconsole /dev/tty0
fi
else
case "${DM}" in
slim|SLIM)
test -s $PIDFILE || pgrep -f $DISPLAYMANAGER > $PIDFILE
esac
fi
rc_status -v
;;
stop)
# make sure to stop the running one (Bug #306035)
if test -s "$KDM_PIDFILE"; then
PIDFILE=$KDM_PIDFILE
elif test -s "$GDM_PIDFILE"; then
PIDFILE=$GDM_PIDFILE
elif test -s "$XDM_PIDFILE"; then
PIDFILE=$XDM_PIDFILE
elif test -s "$SLIM_PIDFILE"; then
PIDFILE=$SLIM_PIDFILE
elif test -s "$LXDM_PIDFILE"; then
PIDFILE=$LXDM_PIDFILE
elif test -s "$ENTRANCE_PIDFILE"; then
PIDFILE=$ENTRANCE_PIDFILE
fi
if test -s $PIDFILE; then
read -t 1 PID < $PIDFILE
if CHECKDM=$(ps ho command= -p $PID) ; then
DISPLAYMANAGER=${CHECKDM%%:blank:]]*}
DM=${DISPLAYMANAGER##*/}
fi
unset CHECKDM
else
rm -f $PIDFILE
unset PIDFILE
fi
echo -n "Shutting down service $DM"
#
# killproc(8) sleep upto five seconds and sends
# SIGKILL if xdm does not terminate within
#
killproc ${PIDFILE:+-p ${PIDFILE}} $DISPLAYMANAGER
rc_status -v
;;
restart)
$0 stop
$0 start
rc_status
;;
reload|force-reload)
test -x /etc/X11/xdm/SuSEconfig.xdm && \
MD5DIR="/var/adm/SuSEconfig/md5" \
/etc/X11/xdm/SuSEconfig.xdm | \
sed 's+\(.*\)+/etc/init.d/xdm: \1+g' | \
/bin/logger
echo -n "Reload service $DM"
killproc -p $PIDFILE $RELOADSIGNAL $DISPLAYMANAGER
rc_status -v
;;
status|check)
echo -n "Checking for service ${DM}: "
checkproc -p $PIDFILE $DISPLAYMANAGER
rc_status -v
;;
probe)
if test $XDMDIR/xdm-config -nt $PIDFILE -o \
$XDMDIR/Xservers -nt $PIDFILE
then
echo reload
fi
;;
try-restart|condrestart)
$0 status
if test $? = 0; then
$0 restart
else
rc_reset
fi
rc_status
;;
*)
echo "Usage: $0 {start|stop|status|restart|reload|force-reload|probe|try-restart}"
exit 1
esac
rc_exit
Well after a few minutes of scrolling the xdm bash code lines again i have decied to give it a go, under Virtual Box using openSUSE 11.4.
So far i have disabled xdm, and created xdm-kde file; i start kde using sudo and xdm-kde. After this, i had installed gnome 2 and used the xdm-gnome file that i have tweaked from the original xdm file but gnome 2 will not start.
So at this point i need an xdm file from a gnome user to delete the lines that regard kdm and to see if an difference exists between his file and mine posted above. Please either posted it here in code tags, or upload the file on a website. I think this is possible to achieve 
Out of curiosity inside virtual box i had installed Gnome 2.30 along side with KDE 4.7.0 using the original XDM file. All has gone well from installation to usage. After i had Gnome 2 installed i did made an reboot to the virtual machine and tested first KDE 4.7.0 and then Gnome2. One thing i did notice: shudown works properly only for KDE for Gnome it`s just loges me out of the session. In my quest and for sure good for others i found a small tutorial for Gnome 3 and KDE here: Installing Gnome 3 over a KDE Based OpenSuse 11.4 Installation – Matthew Casperson’s Blog at the Hubfolio on Bright Hub
After a few days of searching and reading posts on websites, last knight i finally managed to solve the problems that i had with Gnome 3.
My default desktop is KDE 4.7.0 and my second desktop is now Gnome 3; both installed on the same partition with no problems. The only trouble was mainly libgnomekbd that was not upgraded to version 3.0.x by zypper, along with gnome-session.