On 23 Oct 2002 16:34:29 +0200
Vincent Soubise <[EMAIL PROTECTED]> wrote:

> Le mer 23/10/2002 à 11:11, Alain Siani a écrit :
> > dans le .profile ??
> > 
>  Je ne comprends pas ta question.
> Ce que je comprends, en tous les cas, c'est que je n'ai pas bien su
> exprimer ce que je voulais dire.
> Je recommence en effaçant tout ce qui précède pour le répéter de façon,
> j'espère, plus claire.
> J'utilise Icewm et j'en suis content, c'est plus léger que KDE ou gnome
> et ça me va bien.
> Mais je voudrais, parce que ça me facilitera un peu plus la tâche, que
> certaines applications soient lancées dès l'ouverture de lasession parce
> que je m'en sers tout le temps. 
> J'ai une connexion ADSL et lorsque, mon ordinateur est allumé, je reçois
> mes messages de façon quasiment continue (toutes des 5 mn pour être
> exact). Mon gestionnaire de mail est evolution de ximian. Je trouve que
> ce serait plus simple de l'ouvrir dès le départ de façon automatique...
> J'utilise aussi OpenOffice.org, qui met un temps relativement long à
> s'ouvrir. Si le lanceur rapide de cette application pouvait être chargé
> au démarrage de Icewm, ce serait aussi un peu mieux...
> 
> Mais voilà, je ne sais pas faire. Je croyais avoir trouvé en ajoutant la
> commande d'ouverture d'evolution au fichier /home/vincent/.bashrc, mais
> à chaque fois que j'ouvrais une console, j'avais une nouvelle session de
> evolution qui s'ouvrait... 
> Ensuite, je me suis lancé à la recherche du fichier qu'il me fallait
> modifier (puisque ça n'était pas ./bashrc). J'ai fouillé dans les
> /etc/X11/gdm /etc/X11/xinit/xinitrc, /etc/X11/xsession, et j'en passe et
> des meilleures et je n'ai rien compris du fonctionnement de la chose.
> 
> Donc je reviens à mon ./bashrc et me dis qu'on peut, peut-être, lancer
> une commande conditionnelle du genre :
> Si evolution  est ouvert, ne rien faire
> sinon l'ouvrir
> si oooqs est ouvert, ne rien faire
> sinon l'ouvrir...
> Mais je n'ai jamais fait ça et souhaiterais de l'aide.
> 
> est-ce que tu me proposes de créer un fichier ./profile, je n'ai pas
> cela pour l'instant... Serait-ce ce que je dois faire ?
> 
> Vincent
> 

personnellement, je préfère mettre ceci dans le script d'ouverture du windowmanager.

au moment du login graphique, lorsque l'on choisit un utilisateur et le wm à utiliser, 
le wm est lancé après consultation d'un fichier situé dans /etc/X11/wmsession.d avec 
l'UID de l'utilisateur choisi.
voilà à quoi pourrait ressembler le contenu de ce répertoire:
$ ls /etc/X11/wmsession.d
01WM 02KDE 03GNOME 04FLUXBOX 05ICEWM

les fichiers de ce répertoire se caractérisent par un nombre à 2 chiffres donnant 
l'ordre d'apparition dans la fenêtre de choix du login graphique et par le nom du wm.

le contenu de 01WM (cad windowmaker, puisque c'est le wm que j'utilise):

NAME=WM
ICON=
DESK=WindowMaker
EXEC=/opt/wm/bin/runwm
SCRIPT:
exec /opt/wm/bin/runwm

au démarrage, c'est donc le script runwm qui est lancé et non wmaker qui est le 
lanceur normal de windowmaker. runwm est dans le même répertoire que wmaker. ce 
répertoire est inclus dans $PATH.

un script runwm, simplifié, pour lancer xscreensaver (par exemple) au démarrage de 
windowmaker:

apps_boot ()
{
sleep 5
xscreensaver &
}
apps_boot &
wmaker

la fonction apps_boot est interne au script, se lance en tâche de fond et attend 5 
secondes que wmaker soit lancé pour lancer xscreensaver. on pourrait faire plus simple 
avec:

wmaker &
sleep 5
xscreensaver

mais je préfère que wmaker reste en avant plan...
on peut aussi indiquer plus ou moins de temps à sleep, selon la "lourdeur" du wm, pour 
s'assurer qu'il soit bien lancé avant d'ouvrir correctement les fenêtres des 
applications à lancer.

dans ce cas, tous les utilisateurs qui lancent windowmaker depuis la fenêtre de login 
graphique se retrouvent avec xscreensaver lancé avec leur UID. il est possible de 
lancer de applications différentes pour chaque utilisateur en utilisant une 
construction "case":

apps_boot ()
{
sleep 5
case $UID in
        0)
                xterm &
                ;;
        500)
                xscreensaver &
                ;;
        501)
                evolution &
                gnomeicu &
                ;;
esac
}
apps_boot &
wmaker 

il est aussi possible de placer quelques lignes dans $HOME/.bashrc pour obtenir un 
résultat ressemblant. mais .bashrc est un fichier de configuration pour bash, pas un 
lanceur d'applications. de plus, l'application se lancera à chaque ouverture d'un 
terminal. on peut protéger le lancement en recherchant si l'application tourne ou non 
avec ps et une construction avec if then else fi. mais même dans ce cas, si on a 
arrété volontairement l'application, elle sera à nouveau relancée, sans que ce soit 
forcément souhaité, dès la prochaine ouverture d'un terminal.

certains wm permettent de configurer leur démarrage avec les applcations désirées. 
vérifier dans la doc avant de se lancer dans les modif. et toujours faire des 
sauvegardes avant de modifier quoi que ce soit...

bye
jipe

Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com";

Répondre à