ioadamo wrote:
> 
> >
> > Quindi il file da ritoccare e` /etc/X11/Xsession. IL file � il seguente:
> 
> >#!/bin/bash -login
> # Modification for Linux-Mandrake by Chmouel Boudjnah
> <[EMAIL PROTECTED]>
> .............................
>

Ossia e` una modifica non-standard della Mandrake.
Questo e` il bello e il brutto di questa distro.
Te la confezionano molto bene per un uso "normale", pero`
se vuoi "divertirti" non ritrovi le cose al "solito posto".

Vediamo un po' ...
 
> if [ -x /usr/sbin/chksession ];then
>     LIST=$(/usr/sbin/chksession -l)
> else
>     LIST="kde Gnome AfterStep Icewm AnotherLevel failsafe"
> fi
> 
> ..............................
> 

Sembra che vada a prendersi un elenco di GUI/WindowsManager 
che gli viene fornito da "chksession -l" che come hai visto
e` uno script perl che con l'opzione -l fornisce i gui/wm disponibili
e con -F solo il primo.
Se non trova chksession allora usa la LIST successiva.

Hai due strade:
 - convincere chksession a elencare anche staroffice
 - eliminare la chiamata a chksession

Vediamo prima la seconda:
 - metti un # davanti a tutte le righe precedenti tranne
  LIST="kde Gnome Af.........
che trasformi in 
  LIST="kde Gnome StarOffice AfterStep Icewm AnotherLevel failsafe"

poi un po' piu` in basso trovi

> # now, we see if xdm/gdm/kdm has asked for a specific environment
> if [ $# = 1 ]; then
>     case $1 in
>         failsafe)
>         exec $SSH_AGENT xterm -geometry 80x24-0-0
>         ;;
>         default)
>         ;;
>         *)
>         exec $SSH_AGENT /bin/sh -c "$(/usr/sbin/chksession -x=$1)"
>         ;;
>     esac
> else
.................................
e metti la chiamata a StarOffice prima di quella di default)


========================

Prima strada:

Vediamo lo script perl.

> #!/usr/bin/perl
> # (c) MandrakeSoft, Chmouel Boudjnah <[EMAIL PROTECTED]>
> # Copyright under GPL blah blah blah.
> ## you'll don't find much info here, see --help.
> 
>.........................
> Usage: $0 [OPTION]...
> 
>               -F --first:       Print only first available entry.
>               -t, --test:       Go in test mode.
>               -l, --list:       List window-managers.
>     -f=FILE, --file=FILE:       Specify an alternarte config files other
>                                 than /etc/X11/window-manager
> -x=ENTRY, --xsession=ENTRY:     Product window-managers script of ENTRY.
>               -k,  --kdm:       Product window-managers list for kdm sessions.
>               -g,  --gdm:       Product window-managers script for gdm sessions.
>               -h, --help:       Product this help.
> 
> EOF
.........................

Prende l'elenco degli ambienti da /etc/X11/window-manager.
E' un file o una directory?
Vedi che cosa e` e cerca di aggiungere qui staroffice.
Sembrerebbe che basti richiamare "/usr/sbin/chksession -x=staroffice"
per creare lo script necessario e poi con "-k" e "-g" per aggiornare
le liste per kdm e gdm.

> se non erro tu hai la 7.1 , � possibile che abbiano cambiato qualcosa nella
> 7.2,

deduzioni argute :-)
Quindi non posso dirti esattamente come modificare
/etc/X11/window-manager.
Pero` se riesci a capirlo credo proprio che sia la strada
piu` pulita per ottenere quello che vuoi.
L'altra e` piuttosto "sporca" :-)

> Qui fa riferimento a un file che � contenuto in etc/X11/gdm/Sessions/ 

Questo e` un file che interviene solo se si utilizza Gdm al posto 
di Kdm. Sono i due programmi per Gnome e Kde che gestiscono il
login. Se, come credo, usi il KDM qualsiasi modifica sulla
directory etc/X11/gdm non ha effetto



> ma mi sembra diventata un impresa impossibile e inoltre mi st� rompendo
> i c......

Come vedi basta dare un'occhiata con pazienza (e un minimo di pratica)
agli script.
L'unica conoscenza che ho sfruttato e che forse non hai e` che in
  if [ -x /usr/sbin/chksession ];then
"-x nomefile" significa "esiste il file"
Quindi il tutto significa: se esiste /usr/sbin/chksession allora esegui
quello che segue.
Il resto e` abbastanza intuibile.

ciao, Andrea

Rispondere a