Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/04/2013, à 07:19

Pavel37

Quelques questions sur un script

Bonjour,

J'ai créé un script qui permet de faire tourner Skype sur un autre serveur X (accessible par CTRL−ALT-F8) mais je rencontre quelques "soucis".
Je suis sous Lubuntu 12.10.

Voici le script :

#/bin/bash

sudo echo "Lancement du jeu"	# Ce premier sudo ne sert à rien d'autre qu'éviter qu'il ne le redemande ensuite sur des commandes plus importantes

if !( ps -e | grep "tty8" ); then	#Vérifie l'existence du second serveur X
sudo X :3 -ac -terminate &   # Lance sur un nouveau serveur X affichage 3 (Uniquement si il n'est pas déjà lancé)
fi
sleep 1           # Attend 1 secondes que le serveur soit prêt
DISPLAY=:3 xclock &	#Lance xclock dans le serveur X pour le faire patienter durant le démarrage du jeu. (Sinon il risque de se fermer prématurément)
DISPLAY=:3 skype U%
pkill xclock	#Arrête xclock pour quitter le serveur X
sleep 5		#Attend 5 secondes l'arrêt du serveur X
if ( ps -e | grep "tty8" ); then	#Si il ne s'est pas arrêté
sudo kill $(ps -e | grep "tty8" | cut -f 1 -d ' ')	#Arrête le second serveur X
fi

J'ai 2 soucis :
- [RESOLU] Le premier c'est que je voudrais que le "sudo" au lieu d'afficher la demande de mot de passe dans la console me le demande dans une interface (style synaptic) afin que je puisse créé un launcher ce qui m'éviterai de devoir ouvrir un terminal pour lancer mon script mais je n'ai aucune idée de comment faire.

-Le second c'est que je n'ai pas de fenêtre à proprement parler donc je ne peux pas fermer Skype une fois lancé. Il faudrait que je puisse avoir sois la barre supérieur (avec le truc pour éteindre la machine et compagnie) et idéalement ma barre d'application (là ou les fenêtres se mettent lorsque l'on ouvre une application).

Je ne demande pas forcément une solution toute faite bien entendu mais au moins quelques pistes de recherche (bien qu'une solution complète serait idéale lol ).

D'avance merci
Pavel

Dernière modification par Pavel37 (Le 13/04/2013, à 09:25)


N'utilisez pas le pseudo Pavel si vous ne savez pas l'utiliser ;-)
"La vie ne vaut rien mais rien ne vaut la vie"

Hors ligne

#2 Le 12/04/2013, à 07:55

pingouinux

Re : Quelques questions sur un script

Bonjour,
Pour la première question, tu peux créer un lanceur de type "Application dans un Terminal", soit en laissant les sudo dans le script, soit en l'appelant ainsi : sudo /chemin/…/ton_script

Hors ligne

#3 Le 12/04/2013, à 15:26

Pavel37

Re : Quelques questions sur un script

Alors si j'enlève mes sudo dans mon script et que je le lance dans un terminal en faisant :

sudo ./monscrip.sh

Cela fonctionne. En revanche si je crée un lanceur en mettant : sudo /chemin/…/ton_script dedans rien ne se passe (même en cochant lancer dans un émulateur de terminal.

Auriez-vous une idée du pourquoi ?

Dernière modification par Pavel37 (Le 12/04/2013, à 15:26)


N'utilisez pas le pseudo Pavel si vous ne savez pas l'utiliser ;-)
"La vie ne vaut rien mais rien ne vaut la vie"

Hors ligne

#4 Le 12/04/2013, à 15:33

pingouinux

Re : Quelques questions sur un script

Il faut bien sûr (mais c'est sans doute ce que tu as fait), adapter la commande dans le lanceur :

sudo /chemin_vers_le_script/monscript.sh

Il faut quand même laisser les sudo dans le script, quand c'est nécessaire.

Dernière modification par pingouinux (Le 12/04/2013, à 15:35)

Hors ligne

#5 Le 12/04/2013, à 15:41

Pavel37

Re : Quelques questions sur un script

Oui c'est bien ce que j'ai fait et cela ne marche pas. J'ai aussi essayer avec un

sudo su /chemin/monscript.sh

mais sa ne marche pas. hmm


N'utilisez pas le pseudo Pavel si vous ne savez pas l'utiliser ;-)
"La vie ne vaut rien mais rien ne vaut la vie"

Hors ligne

#6 Le 12/04/2013, à 16:04

miniSeb

Re : Quelques questions sur un script

sudo bash /chemin/vers/lescript.sh

Hors ligne

#7 Le 12/04/2013, à 16:05

Watael

Re : Quelques questions sur un script

salut,

Autant que j'ai pu le lire, su et sudo sont déconseillés dans les scripts appelés depuis une interface graphique.
Il est recommandé d'utiliser gksu et gksudo.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#8 Le 12/04/2013, à 16:29

pingouinux

Re : Quelques questions sur un script

@Watael #7 : Même si l'application est lancée dans un terminal ?

Hors ligne

#9 Le 12/04/2013, à 16:37

Watael

Re : Quelques questions sur un script

depuis un Xterm ? je ne vois pas l'intérêt.

Pavel37 veut créer un lanceur :

je voudrais que le "sudo" au lieu d'afficher la demande de mot de passe dans la console me le demande dans une interface (style synaptic) afin que je puisse créé un launcher ce qui m'éviterai de devoir ouvrir un terminal pour lancer mon script


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#10 Le 13/04/2013, à 09:25

Pavel37

Re : Quelques questions sur un script

@Watael : merci cela fonctionne avec gksudo et je n'ai plus besoin des sudo au sein de mon script.
@pingouinux : merci de ton aide.

Si quelqu'un à une idée je suis toujours preneur smile


N'utilisez pas le pseudo Pavel si vous ne savez pas l'utiliser ;-)
"La vie ne vaut rien mais rien ne vaut la vie"

Hors ligne

#11 Le 14/04/2013, à 18:28

Pavel37

Re : Quelques questions sur un script

Je pense qu'il y a quelque chose à faire avec startx mais je ne vois pas quoi hmm.
Auriez vous une idée ?


N'utilisez pas le pseudo Pavel si vous ne savez pas l'utiliser ;-)
"La vie ne vaut rien mais rien ne vaut la vie"

Hors ligne

#12 Le 18/04/2013, à 21:56

Pavel37

Re : Quelques questions sur un script

up svp


N'utilisez pas le pseudo Pavel si vous ne savez pas l'utiliser ;-)
"La vie ne vaut rien mais rien ne vaut la vie"

Hors ligne

#13 Le 18/04/2013, à 22:17

Watael

Re : Quelques questions sur un script

salut,

Le second c'est que je n'ai pas de fenêtre à proprement parler

...

tu peux détailler ta situation, stp.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#14 Le 19/04/2013, à 01:18

Josepe36

Re : Quelques questions sur un script

Bonjour

si j'ai bien saisie ce que tu veux, c est démarrer un deuxiéme serveurX et lancer des apllications dedans.
Je viens de voir ce fil, et me suis amusé a écrire celà :

#!/bin/bash

#============================================"
#
#       NEED : sudo apt-get install xdotool
#
#============================================"

    main(){
        # Get current display value for reinitialise at the end
        old_disp=$(echo $DISPLAY | cut -d "=" -f2)

        # export display variable, to launch all gui program in it
        export DISPLAY=:3

        # Need to be sure X is ok ( to adjust in need )
        sleep 5

        # Window decorator
        metacity --replace &
        meta_pid=$!

        # Launch lxde as you need
        dbus-launch --exit-with-session  lxsession &
        wait_pid=$!
        sleep 2
        
        # Skype as you need
        skype &
        sk_pid=$!
        
        # Wait the end of lxsession
        wait $wait_pid
        
        # After logout lxde the script continue
        # Clean some process
        killall lxpanel
        killall lxsession
        killall pcmanfm
        
        # Return to original Server X
        xdotool key ctrl+alt+F7;

        # Kill slowly metacity
        kill -15 $meta_pid 
        
        # Reinit env variable DISPLAY
        export DISPLAY=$old_disp;

    }

    authentification(){
        # Ask password to launch X
        gksudo X :3 &
        xdotool key ctrl+alt+F8;
     }
    
# Must not be launch as root
if [ ! $UID == "0" ]
    then
        authentification || exit
        main;
        exit;
    else
        echo "Must not be launch as root.";
        exit;
fi

Bon je me suis pas cassé la tête sur les controls ou questions diverses mais je pense que ça peut déjas te donner une base d'inspiration.

Dernière modification par Josepe36 (Le 19/04/2013, à 01:21)


Développeur distribution Hybryde
www.hybryde.org

Hors ligne

#15 Le 19/04/2013, à 05:34

Pavel37

Re : Quelques questions sur un script

Watael a écrit :

tu peux détailler ta situation, stp.

Et bien quand Skype se lance, je n'ai que l'affichage de skype (les contacts et compagnie) mais pas la barre en haut ou tu peux réduire, agrandir et fermer ta fenêtre et cela me fait la même chose sur les petites fenêtres interne à skype qui s'ouvre et comme je n'ai pas de les barres d'application (l'endroit ou tes fenêtres font des rectangles quand tu les réduits) bah je ne peux pas switcher entre les différentes fenêtres de l'application.


Josepe36 a écrit :

Bon je me suis pas cassé la tête sur les controls ou questions diverses mais je pense que ça peut déjas te donner une base d'inspiration.

Je te remercie, d'un point de vue théorique cela à l'air juste (dans le sens ou cela va tourner). Je test dès que j'ai un peu de temps et je te tiens au courant.

Pavel


N'utilisez pas le pseudo Pavel si vous ne savez pas l'utiliser ;-)
"La vie ne vaut rien mais rien ne vaut la vie"

Hors ligne

#16 Le 19/04/2013, à 13:00

Watael

Re : Quelques questions sur un script

je n'ai que l'affichage de skype (les contacts et compagnie) mais pas la barre en haut

...
Comment en arrives-tu à cette situation ?

Tu devrais peut-être lire la page man de xinit, et celle de X.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#17 Le 19/04/2013, à 16:19

Josepe36

Re : Quelques questions sur un script

@Watael
il manque tout simplement un decorateur de fenêtre smile


Développeur distribution Hybryde
www.hybryde.org

Hors ligne

#18 Le 19/04/2013, à 16:33

Watael

Re : Quelques questions sur un script

il manque tout simplement un decorateur gestionnaire de fenêtre (Window Manager).

Nous, on le sait, j'aurais voulu que Pavel nous le dise.

Il y a un concours sur les forums : obtenir une réponse en donnant le moins de renseignements possible.
En réaction, je demande plus de détails, jusqu'à obtenir l'information qui nous aurait éclairés dès le premier message.

Dernière modification par Watael (Le 19/04/2013, à 16:33)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne