Page 1 sur 2

[xinitrc] Menu pour éteindre, mettre en veille (Résolu)

Publié : mer. 06 juin 2012, 15:42
par Gr3e
Bonjour, voulant pousser un peu plus loin la configuration d'awesome j'ai décidé d'éditer un petit menu pour mettre en veille éteidre, mettre en hibernation etc.
J'ai suivi le tuto suivant : http://blog.rolinh.ch/dev/linux/un-menu ... -hiberner/.

Le menu s'ajoute bien à la barre de menu awesome, mais lorsque je clique dessus rien ne se passe. Pas de message, pas d'extinction ... rien.

Des pistes ?

Quand je lance manuellement

Code : Tout sélectionner

sh reboot.sh
j'obtiens ceci :

Code : Tout sélectionner

reboot.sh: ligne2: /org/freedesktop/ConsoleKit/Manager: Aucun fichier ou dossier de ce type

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 15:45
par Abazigal
Faut tester 2 choses:

- Est-ce que les scripts sont bien appelé au clic ?
(rajoute au début de "shutdown.sh" (à la ligne d'après #!/bin/sh) un "touch /tmp/lol", et vérifie si le fichier est créer quand tu clic sur Eteindre, par exemple)

- Est-ce que quand tu lance la commande à la main le PC s'éteind bien ? (quand tu lance "dbus-send blablabla")

Suite à ton edit:
Est-ce que tu utilises bien ConsoleKit ? (c'est installé ? ta session est lancé en l'utilisant ?)

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 15:55
par spirit344
Pourquoi ne pas utiliser les commandes existantes du système ? perso, j'utilise ça dans le menu :

Code : Tout sélectionner

terminal .. " -e sudo reboot"
terminal .. " -e sudo halt"
Et ça fonctionne très bien

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 15:59
par Abazigal
Bein ca oblige à installer sudo et à se créer une règle.
(IMHO:) Autant s'en passer si possible.

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:02
par oktoberfest
Gr3e a écrit :Quand je lance manuellement

Code : Tout sélectionner

sh reboot.sh
j'obtiens ceci :

Code : Tout sélectionner

reboot.sh: ligne2: /org/freedesktop/ConsoleKit/Manager: Aucun fichier ou dossier de ce type
Salut,

comment souvent nous ne sommes pas devin... Donc poster ton script serait une bonne idée :) D'autant plus qu'il semble qu'il y a une erreur de syntaxe dedans

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:04
par Gr3e
Alors le script shutdown.sh est le suivant :

Code : Tout sélectionner

#!/bin/sh
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
En console

Code : Tout sélectionner

dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
ne fonctionne pas, mais fonctionne si je fais un petit sudo devant.

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:06
par oktoberfest
Lances-tu ta session avec consolekit ? A voir suivant la méthode (.xinitrc, slim, gdm...)
Fais-tu partie du groupe power ?

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:07
par Gr3e
Je lance ma session avec startx :p :p
Par contre je fais partie du groupe power

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:08
par oktoberfest
Et tu as quoi dans ton $HOME/.xinitrc ?

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:10
par spirit344
ajoutes ça ton fichier ~/.xinitrc (il est appelé par startx)

Code : Tout sélectionner

exec ck-launch-session awesome

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:11
par Gr3e
Ceci :

Code : Tout sélectionner

#!/bin/sh
# ~/.xinitrc
#
# launches urxvtd daemon
urxvt -q -f -o
#
# disable bip sound
/usr/bin/xset b off

# apply dual-screen configuration when VGA is connected
xrandr | grep "VGA1 connected"
if [ $? -eq 0 ]; then
        xrandr --output LVDS1 --mode 1600x900 --pos 0x0 --rotate normal --output VGA1 --mode 1280x1024 --pos 1600x0 --rotate normal
fi

DEFAULT_SESSION=awesome

case $1 in
awesome)
        exec dbus-launch awesome
        ;;
xfce)
        thunar --daemon &
        exec startxfce4
        ;;
*)
        exec dbus-launch $DEFAULT_SESSION
        ;;
esac

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:26
par oktoberfest
Il te faut rajouter ck-launch-session comme l'indique spirit344.
Un petit

Code : Tout sélectionner

exec ck-launch-session dbus-launch awesome
devrait aider

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:33
par spirit344
@oktoberfest

ah tiens, tu cumules l'option "dbus-launch" à "ck-launch-session" ? ça ajoute quoi au juste ?

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:43
par oktoberfest
Je ne sais pas, je suis le wiki d'openbox :)
J'ai toujours lu que si on lançait le démon dbus, il fallait aussi lancer sa session graphique avec dbus-launch pour profiter de certaines facilités (montage automatique usb par exemple).

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:45
par spirit344
ah c'est possible... je vais l'ajouter et voir si ça change quelque chose...

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:50
par Gr3e
Ca a bien changé quelquechose mais cela ne fonctionne toujours pas, je m'explique.
Si j'exécute le script qui contient

Code : Tout sélectionner

dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
, il ne se passe toujours rien.

Par contre si je modifie avec

Code : Tout sélectionner

sudo dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
, awesome me fais patienter avec une petit icone d'attente, j'imagine qu'il attends que je rentre un mot de passe ...

Je fais comment pour m'affranchir du sudo dans cette situation ?

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:52
par oktoberfest
Si t'exécute la ligne que tu indiques dans une console, tu as quoi en retour ?

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 16:56
par Gr3e

Code : Tout sélectionner

dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
me renvoie

Code : Tout sélectionner

Error org.freedesktop.ConsoleKit.Manager.NotPrivileged: Not Authorized

Code : Tout sélectionner

sudo dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
me demande le mot de passe puis éteint le pc

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 17:01
par oktoberfest
Avant de foncer dans aweseome avec les menus et tuttiquanti, prends le temps de d'abord tester ton script en ligne de commande (Remarque valable de façon générale : on teste d'abord unitairement quelque chose avant de l'intégrer dans un autre produit : cela permet de mieux cerner les soucis).

Pour le moment je sèche et il est l'heure de quitter le boulot : bonne chance sur le forum. J'essaierai chez moi ce soir si cela ne fonctionne toujours pas (vu que le problème n'est pas lié à awesome, on peut essayer avec openbox, xmonad, dwm...)

Re: [Awesome] Menu pour éteindre, mettre en veille ...

Publié : mer. 06 juin 2012, 17:02
par Abazigal
En ayant lancé ta session avec "ck-launch-session" ?

Si oui:
1) poste le résultat de 'ck-list-sessions'
2) poste la liste des groupes auxquels ton user appartient (commande 'groups')