# Comment créer une fenêtre au start de l'ordi

**URL:** <https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151 "2016-02-21T02:12:01Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/1 "2016-02-21T02:12:01Z")

</div>

Salut à tous,  
Je sais pas vraiment ou poster ma question donc mea culpa aux modos.

Je désire charger un simple serveur X et au démarrage de la bécane afficher une fenêtre avec un ou des bouton/s. En cliquant dessus, on démarre (ex: firefox) et quand on quitte l’application, ma fenêtre avec le/les bouton/s réapparait sur un fond noir standard xserver-xorg.

Ca c’est pour le test, maintenant quel outil utiliser et commant ?

Je vous remercie pour les tuyaux.

Pascal  
…

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/2 "2016-02-21T02:12:02Z")

</div>

En gros tu veut lancer tes applications graphiques depuis X sans aucun environnement graphique d’installé, même pas des poids plume ![:think:](https://www.debian-fr.org/uploads/default/original/1X/98cae0704aea0201d04f151843e80a3ecd391eca.gif "Think")

---

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/3 "2016-02-21T02:12:02Z")

</div>

Un script, avec zenity pour la fenetre avec les boutons. Selon le résultat, ça ouvre l’application voulue. Après, mettre en place un autosartx qui charge ton script dès que tu as lancé le pc.

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/4 "2016-02-21T02:12:02Z")

</div>

> [@thuban](#):
>
> Un script, avec zenity pour la fenetre avec les boutons. Selon le résultat, ça ouvre l’application voulue. Après, mettre en place un autosartx qui charge ton script dès que tu as lancé le pc.

et préparé un bash.rc avec les options qui vont bien et lancer ces quelques applications dans un buffer 😕 (bon ça fait bricolage mais je pense que si c’est pas trop gourmand ça doit pouvoir passé ) .

D’ailleurs quels intérêts ![:think:](https://www.debian-fr.org/uploads/default/original/1X/98cae0704aea0201d04f151843e80a3ecd391eca.gif "Think")

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/5 "2016-02-21T02:12:02Z")

</div>

Clochette :  
Oui, j’en ai ma claque de solution toutes faites qui prennent plus de temps à parammètrer et à comprendre leurs structure que de réellement exploité. Et je passe tous les probs de compatibilité, etc. etc. Tu vois quoi 😕

thuban :  
Je te remercie, c’est visiblement exactement ce que je recherchais. J’ai tester un script sur ma buntu de bureau et le résultat et là ![:041](https://www.debian-fr.org/uploads/default/original/1X/bfe857c9119752799c3eac55ca37a50312c51282.gif "applaudit")

Maintenant, je retourne au bureau avec un disque vierge et je test sur un simple serveur X le plus épuré possible et je regarde le comportement…

Je me permets de garder ce post ouvert, pour peut-être des compléments de votre par seront les bienvenus.

Dans tous les cas merci à vous.  
Pascal  
…

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/6 "2016-02-21T02:12:07Z")

</div>

Je doute que tu puisse créer une fenêtre sans gestionnaire de fenêtre.

---

<div class="post-metadata">

**Author:** ![sinozis](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/s/85f322/32.png) [@sinozis](https://www.debian-fr.org/u/sinozis)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/7 "2016-02-21T02:12:09Z")

</div>

openbox + wbar  
tu verrouilles les comportements de openbox suivant tes besoins.  
ex: interdiction de réduire ou d’enrouler les fenêtres, désactiver les touches raccourci (alt+ tab, alt + f4…)  
 ![:006](https://www.debian-fr.org/uploads/default/original/1X/924eb3db8bedad6a0d333b02031d3c6a9af9d9c5.gif "salut")

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/8 "2016-02-21T02:12:15Z")

</div>

Re à tous,  
MisterFreez : en effet, sans un petit gestionnaire de fenêtre y se passe pas grand chose.

sinozis : Oui, en recherchant un gestionnare super lite, je suis tombé sur openbox.  
Je fais quelques tests et je poste.

…

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/9 "2016-02-21T02:12:15Z")

</div>

[quote=“pascal\_1212”]sinozis : Oui, en recherchant un gestionnare super lite, je suis tombé sur openbox.  
Je fais quelques tests et je poste.

…[/quote]  
Dis nous ce que tu cherche comme comportement on peut essayer de t’aider à trouver un gestionnaire (dwm peut être pas mal).

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/10 "2016-02-21T02:12:16Z")

</div>

Ok,  
Alors le but avoué est :  
J’ai une bécane de salon qui a grillé 😕 En son temps, j’avais passé pas mal d’heure avec freevo, vdr, lircd, lcdproc, etc… etc. Le tout fonctionnait bien sous une etch ![8)](https://www.debian-fr.org/uploads/default/original/1X/ae031e9834d19166598edd060b063d44f1829139.gif "Cool")

Il faut que je remette la main à la pate et je veux un truc plus lite qui me permette de :  
iceweasel  
VLC pour la télé  
lecteur de cd/dvd  
Matter les visiteurs du soir avec ZoneMinder  
Quelques composant domotique

Voilà en gros le but avoué.

Donc, une fenêtre qui s’ouvre au boot avec des boutons pour démarrer les différente applis, la souris pour cliquer (à terme faire avec la zapette i2c de ma carte tuner)  
Dans tous les cas, éviter freevo, xbmc, mythtv ou autres usine à gaz dont les files sont dicéminé un peu partoutet grosse galère quant une applis crash ou autre…

Voilà pourquoi la pair script/zenity sur openbox me parrait être un point de départ intéressant et finiles usine à gaz 😠

…

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/11 "2016-02-21T02:12:17Z")

</div>

Il faut demander confirmation à Thuban, mais je pense que dwm doit pouvoir faire l’affaire avec une application par étiquette (faudrait pouvoir faire des règles pour que les clients soient toujours sur la même étiquette).

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/12 "2016-02-21T02:12:17Z")

</div>

Re,

```auto

```

Heu tu m’es un peu excessif, je vois pas.  
Si on considère qu’un prog est un client, alors y a pas de soucis ex:

[code]#!/bin/sh

/usr/bin/iceweasel  
[/code]  
./le\_nom\_du\_script  
Mais sa reste le lanceur, je veux l’interfacer…

Maintenant, il me faut créer une fenêtre qui affiche quelques boutons au boot du server X et on clique au bon androit.  
…

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/13 "2016-02-21T02:12:29Z")

</div>

Il te suffit simplement de mettre par exemple «playonlinux» dans .xinitrc du compte. En tapant startx, tu auras uniquement playonlinux qui sera affiché. Ça ne pose aucun souci. Tu peux ensuite faire un dispositif d’autologin et rajouter à la fin de .bashrc les lignes

`if [`tty` = "/dev/tty1"] ; then
startx
fi
`pour que cela se fasse automatiquement lors de l’allumage de la machine.

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/14 "2016-02-21T02:12:39Z")

</div>

Te remercie fran.b cela faisait longtemps 😃  
Oui, je vois une modif getty, .bachrc, etc…

Je suis tombé sur fltk avec un tuto. Créer une fenêtre avec bouton… après la compil, (Segmentation fault) donc mes premiers tours de roue en C démmarre avec quelques difficultés… 😕  
Mais je crois que je suis sur la voie ➡  
…

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/15 "2016-02-21T02:12:40Z")

</div>

[quote=“pascal\_1212”]Je suis tombé sur fltk avec un tuto. Créer une fenêtre avec bouton… après la compil, (Segmentation fault) donc mes premiers tours de roue en C démmarre avec quelques difficultés… 😕  
Mais je crois que je suis sur la voie ➡  
…[/quote]  
Regarde plutôt du coté de Gtkdialog ou de zenity.

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 21, 2016, 2:12 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/16 "2016-02-21T02:12:47Z")

</div>

Tu mets une ligne

`1:2345:respawn:/sbin/mingetty --noclear --autologin tonutilisateur tty1
`après avoir installé mingetty et ça roule

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:13 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/17 "2016-02-21T02:13:00Z")

</div>

Re à tous,  
On est d’accord fran.d pour le boot.  
Voilà quelques lignes pour ma p’tit box :

```auto
#!/bin/bash

input=`zenity --width 640 --height 480 --title="MediaCenter" --text="Menu principale" --list --radiolist --column="Choix" --column="Actions" TRUE Tele FALSE Internet FALSE Radio FALSE Shutdown`

if [$input == Tele]
        then /usr/bin/totem | zenity --progress --pulsate --title="Demarrage de la tele" --auto-close
fi

if [$input == Internet]
        then /usr/bin/firefox | zenity --progress --pulsate --title="Demarrage de la tele" --auto-close
fi

if [$input == Radio]
        then /usr/bin/rhythmbox %U | zenity --progress --pulsate --title="Demarrage de la tele" --auto-close
fi

if [$input == Shutdown]
        then echo "$input" ### pour pas downer la bécane !
fi

if [$input != $input]
        then ./toto_zenity ### pour avoir une boucle en cas de clique sur annuler !
fi
```

Mais y a des prob à mon script naissant 😉  
pourquoi lorsque une appli est runée, la fonction zenity --progress subsiste jusqu’à ce qu’on quitte l’appli runée même avec --auto-close ?  
Quand je quitte une applis, j’aimerais que mon script toto\_zenity soie ré afficher ! Donc le script toto\_zenity devrait rester à l’écoute de lui-même. Faut une fonction (while do done)?

Une idée ?  
…

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 2:13 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/18 "2016-02-21T02:13:01Z")

</div>

Ceci ?

```auto
#!/bin/sh

while true ; do
    input=$(zenity --width 640 --height 480 --title="MediaCenter" --text="Menu principale" --list --radiolist --column="Choix" --column="Actions" TRUE Tele FALSE Internet FALSE Radio FALSE Shutdown)

    if [$input == Tele]
        then /usr/bin/totem | zenity --progress --pulsate --title="Demarrage de la tele" --auto-close
    fi

    if [$input == Internet]
        then /usr/bin/firefox | zenity --progress --pulsate --title="Demarrage de la tele" --auto-close
    fi

    if [$input == Radio]
        then /usr/bin/rhythmbox %U | zenity --progress --pulsate --title="Demarrage de la tele" --auto-close
    fi

    if [$input == Shutdown]
        then echo "$input" ### pour pas downer la bécane !
    fi

    if [$input != $input]
        then ./toto_zenity ### pour avoir une boucle en cas de clique sur annuler !
    fi
done
```

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:15 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/19 "2016-02-21T02:15:58Z")

</div>

Re à tous,  
Je fais évouer mon script, il devrait bientôt aboutir.  
J’ai un p’tit prob avec :

```auto
if ["$action" = "Changer"]
then
      pkill mplayer \ # arret de mplayer
      session=`zenity --title="Les radios On-Line" --text="Menu Radio" --list --radiolist --column="" --column= TRUE "Frequence 3" FALSE "Funradio" FALSE "Stop"`
fi
```

Le but est de kill mplayer, réinterfacer une fenêtre et pouvoir changer de radio.

pkill mplayer ne fonctionne pas 😠

Y a-t-il une conf à faire à /etc/mplayer.conf ou une autre métode de kill ???

Vos idées sont les bienvenues.  
…

---

<div class="post-metadata">

**Author:** ![pascal\_1212](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@pascal\_1212](https://www.debian-fr.org/u/pascal_1212)\
**Post date:** [Février 21, 2016, 2:16 UTC](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151/20 "2016-02-21T02:16:52Z")

</div>

Re à tous,  
Mon prob vient visiblement de la logique 😕  
Mon script :

```auto
#!/bin/bash

input=`zenity --width 640 --height 480 --title="MediaCenter" --text="Menu Principale" --list --radiolist --column="Choix" --column="Actions" TRUE "Tele" FALSE "Radio" FALSE "Internet" FALSE "Quitter"`

case $input in
        Tele)
                echo "$input"; exit 0 ;;

        Radio)
        radio=`zenity --title="Les radios On-Line" --text="Menu Radio" --list --radiolist --column="Choix" --column="Radio" TRUE "Funradio" FALSE "Frequence_3" FALSE "Stop"`
        case $radio in
                Funradio)
### echo "$input";
### echo "$radio"; 
                        radio1=`zenity --title="Changer/arreter" --text="Menu Radio" --list --radiolist --column="Choix" --column="Actions" TRUE "Changer" FALSE "Quitter"` # | gnome-mplayer http://streaming.radio.funradio.fr:80/fun-1-44-128`;
### echo "$radio1"
                        if [$radio1 == "Changer"]
                        then
                                echo "changer radio à été cliqué !"
                                ###ici une condition fonction qui appele le case precedent
                                ###radio=`zenity --title="Les radios On-Line" --text="Menu Radio" --list --radiolist --column="Choix" --column="Radio" TRUE "Funradio" FALSE "Frequence_3" FALSE "Stop"`
                        fi

                        if [$radio1 == "Quitter"]
                        then
                                echo "Quitter radio à été cliqué !"
# input=`zenity --width 640 --height 480 --title="MediaCenter" --text="Menu Principale" --list --radiolist --column="Choix" --column="Actions" TRUE "Tele" FALSE "Radio" FALSE "Internet" FALSE "Quitter"`

                        fi
                ;;

                Frequence_3)
                        echo "$input";
                        echo "$radio";
                        echo "$radio1";
                ;;
                Stop)
                        echo "$input";
                        echo "$radio";
                ;;
        esac
        ;;
        Internet)
               echo "$input"; exit 0;;
# output=`/usr/bin/iceweasel | zenity --progress --pulsate --title="Demarrage de la tele" --auto-close`; \
# input=`zenity --width 640 --height 480 --title="MediaCenter" --text="Menu Principale" --list --radiolist --column="Choix" --column="Actions" TRUE Tele FALSE Radio FALSE Internet FALSE Shutdown`;;

        Quitter)
                echo "$input"; exit 0;;

        -1)
                echo "Une erreur inattendue s'est produite."; exit 0;;
esac
```

à cette case ($radio1):

```auto
echo "changer radio à été cliqué !"
```

J’aimerais remonter à l’instance précédente qui serait ($radio)  
Mais mon script s’arrête et je peux qu’afficher (echo “changer radio à été cliqué !”)

Quelqu’un une solution ?  
…

[Page suivante](https://www.debian-fr.org/t/comment-creer-une-fenetre-au-start-de-lordi/32151.md?page=2)
