Re: gdm question



Hey Aschwin! Thanks a lot for the effort you put in to your reply! It indeed looked like a lot of digging ;)
I'm going to be attempting this later today. I have one question, though, about the /usr/bin/startgnome2 script I will be creating. Should I be just adding the lines ...
exec /usr/bin/gnome-session
export PATH=/opt/garnome/bin:/opt/garnome/sbin:$PATH
export LD_LIBRARY_PATH=/opt/garnome/lib:$LD_LIBRARY_PATH 
export GDK_USE_XFT=1
exec /opt/garnome/bin/gnome-session
... to my startgnome file at the end, then saving it as startgnome2 (changing /opt to /home/jason)? I'm not as experienced at this kind of thing yet, so it wasn't obvious to me.

Hope to hear back!

- Jason


On Mon, 2002-09-02 at 02:42, Aschwin van der Woude wrote:
Ok, lets see how I did this. Keep in mind I might not have gotten
everuthing the Mandrake-way, but it works for me.

Runlevel 5 starts /etc/X11/prefdm which reads /etc/sysconfig/desktop.
This config file tells prefdm the display-manager you would like to use.
I needed to modify prefdm in order for it to accept a new option (gdm2)
in the 'desktop'-file.

This is the diff for prefdm :

--- prefdm.rpmnew	Fri Mar 15 17:46:41 2002
+++ prefdm	Tue May  7 22:57:51 2002
@@ -41,6 +41,8 @@
 	[ -z "$DISPLAYMANAGER" ] && DISPLAYMANAGER=$DESKTOP
 	if [ "$DISPLAYMANAGER" = "GDM" -o "$DISPLAYMANAGER" = "gdm" -o
"$DISPLAYMANAGER" = "GNOME" -o "$DISPLAYMANAGER" = "gnome" -o
"$DISPLAYMANAGER" = "Gnome" ]; then
 		preferred=gdm
+	elif [ "$DISPLAYMANAGER" = "GDM2" -o "$DISPLAYMANAGER" = "gdm2" -o
"$DISPLAYMANAGER" = "GNOME2" -o "$DISPLAYMANAGER" = "gnome2" -o
"$DISPLAYMANAGER" = "Gnome2" ]; then
+		preferred=/opt/garnome/bin/start-gdm
 	elif [ "$DISPLAYMANAGER" = "KDM" -o "$DISPLAYMANAGER" = "kdm" -o
"$DISPLAYMANAGER" = "KDE" -o "$DISPLAYMANAGER" = "kde" ]; then
 		preferred=kdm
 	elif [ "$DISPLAYMANAGER" = "XDM" -o "$DISPLAYMANAGER" = "xdm" ] ; then


As you can see a variable 'preferred' is used for launching the
display-manager in the end of the script. I need to set the full path to
a start-gdm script, because my gnome2 installation is not in the default
path.

I didn't call gdm directly because I did want to have anti-aliasing and
so on. So I created the following script called 'gdm-start'

#!/bin/sh
export PATH=/opt/garnome/bin:/opt/garnome/sbin:$PATH
export LD_LIBRARY_PATH=/opt/garnome/lib:$LD_LIBRARY_PATH
export GDK_USE_XFT=1
exec /opt/garnome/bin/gdm -nodeamon

As you can see it start gdm. Now you are almost fully operational. But
off course you want to have gdm list all sessions Mandrake knows about.
For this I modified the gdm configuration (for me in
/opt/garnome/etc/gdm/gdm.conf) to point to the normal session
directories.

Here the config lines I changed :

[daemon]
PostSessionScriptDir=/etc/X11/gdm/PostSession/
PreSessionScriptDir=/etc/X11/gdm/PreSession/
SessionDir=/etc/X11/gdm/Sessions/

(I am not sure if more changes were need like rootpath etc.)
Next step is to make Gnome2 show up as an option in the session-list

For this I first add a file called 'Gnome2' to /etc/X11/gdm/Sessions/
with the following content :

#!/bin/sh
exec /etc/X11/xdm/Xsession Gnome2


This is the same way other sessions are started, and luckily no
modification are needed to the Xsession-script as is actually expected
to easily add new Sessions.
This script uses a script called /usr/sbin/chksession to do the session
specific startup. This script looks in /etc/X11/wmsession.d.
In this 'wmsession.d' directory I add a file called '01Gnome2'. You can
give it another number if you like, but have it at number one makes it
the default session.
The '01Gnome2' file looks like this:

NAME=Gnome2
ICON=gnome-logo-icon-transparent.xpm
DESC=Gnome2 Environment
EXEC=/usr/bin/startgnome2
SCRIPT:
exec /usr/bin/startgnome2


As you see it starts Gnome2 through a 'startgnome2' script. I didn't
create this script anew, instead I just copied the orginal 'startgnome'
script and made some modifications to it.
Here a diff of the modifications :

@@ -45,4 +45,8 @@
   echo $MDKVERSION > $HOME/.gnome/mdkversion
 fi
 
-exec /usr/bin/gnome-session
+export PATH=/opt/garnome/bin:/opt/garnome/sbin:$PATH
+export LD_LIBRARY_PATH=/opt/garnome/lib:$LD_LIBRARY_PATH 
+export GDK_USE_XFT=1
+
+exec /opt/garnome/bin/gnome-session


As you can see it starts gnome-session and sets the correct
env-variables so I do have smooth anti-aliasing and so.

After all this you should have a nice anti-aliased gdm2 listing a gnome2
session, which also starts with anti-aliasing enabled.

Have fun,

-A.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]