bon j'ai trouvé pourquoi ça ne marchait pas. 
dans le script devant shutdown j'avais oublié sudo 
maintenant ça éteint bien et ça ne demande pas de mots de passe grâce à la modif de sudoers. ça marchait aussi mieux avec l'installation du paquet sudo^^
j'ai mis les commandes a la fin du ~/bashrc
le problème c'est que ce fichu script se lance à chaque fois que je me connecte, même avec les autres tty ou avec ssh
du coup ça réessaye de lancer X mais comme il est déjà lancé ça éteint direct la machine
histoire de flinguer plein de chaton
je fait
if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
xinit firefox
sudo shutdown -h now
fi
les autres consoles remarchent
mais y a un soucis
tty1 reste en attente de la fermeture du script et le mecs qui essaye un ctrl C ou Z ça fait tout déconner 
mais au lieu de ramener sur le prompt ça affiche ^C ou ^Z et quand j'essaye de fermer le navigateur l’écran devient juste tout noir et tty1 ne bouge plus sauf si je fais ctrl alt suppr
"#! /bin/sh
iceweasel
poweroff
exit "
c'est une idée à creuser
"Personnellement, je passerai shutdown en SUID root et j'utiliserais ca pour eteindre.
Aussi, je ne ferai pas un shutdown des l'arret du processus firefox. C'est trop violent, par exemple au cas ou firefox crash, la machine s'eteint. Il est probablement preferable de relancer firefox dans ce cas. J'afficherais une fenetre avec deux choix "relancer firefox ou shutdown". "
ah oui, ça parait judicieux.
pour l'aide les gars