Page 1 sur 1

[Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 00:18
par Garett
Bonjour à tous,

aujourd'hui j'ai entrepris la réinstallation d'une ArchLinux toute neuve.

Pour cela, j'ai téléchargé le support d'installation de novembre puis j'ai suivi les guides dans l'ordre suivant : Juste après ça, je me log sur mon utilisateur Garett puis je tente un startx : tout ce passe nickel !

J'attaque la phase suivante : automatiser le lancement de startx et pour cela, j'applique la méthode suivante :
http://wiki.archlinux.fr/Startx#D.C3.A9 ... atiquement

Je lance la commande :

Code : Tout sélectionner

systemctl start startx@Garett.service
et là c'est le drame :triste:

Voile retour de la commande :

Code : Tout sélectionner

systemctl status startx@Garett.service

Code : Tout sélectionner

startx@Garett.service - startx automatique pour l'utilisateur Garett
	  Loaded: loaded (/etc/systemd/system/startx@.service; disabled)
	  Active: inactive (dead) since Tue, 2012-11-06 23:37:30 CET; 6s ago
	 Process: 299 ExecStart=/bin/bash -l -c startx (code=exited, status=0/SUCCESS)
	  CGroup: name=systemd:/system/startx@.service/Garett

Nov 06 23:37:25 archlinux bash[299]: Avertissement du gestionnaire de fenêtres : Log level 32: Execution of main.js threw exception: Polkit.Error: No session for pid 536
Nov 06 23:37:25 archlinux bash[299]: gnome-session[326]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Nov 06 23:37:25 archlinux gnome-session[326]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Nov 06 23:37:28 archlinux bash[299]: gnome-session[326]: CRITICAL: gsm_manager_set_phase: assertion `GSM_IS_MANAGER (manager)' failed
Nov 06 23:37:28 archlinux gnome-session[326]: CRITICAL: gsm_manager_set_phase: assertion `GSM_IS_MANAGER (manager)' failed
Nov 06 23:37:28 archlinux gnome-session[326]: Gtk-CRITICAL: gtk_main_quit: assertion `main_loops != NULL' failed
Nov 06 23:37:28 archlinux bash[299]: gnome-session[326]: Gtk-CRITICAL: gtk_main_quit: assertion `main_loops != NULL' failed
Nov 06 23:37:28 archlinux bash[299]: xinit: connection to X server lost
Nov 06 23:37:28 archlinux goa[522]: goa-daemon version 3.6.0 exiting [main.c:154, main()]
Nov 06 23:37:29 archlinux bash[299]: waiting for X server to shut down .Server terminated successfully (0). Closing log file.
Et honnêtement, je suis plutôt largué. J'ai cherché pendant plusieurs heures sur le web mais soit il n'y a rien, soit je n'ai pas su cerner mon problème...
Pourtant je suis persuadé que la solution ne doit pas être loin (startx démarrant très bien)

Si quelqu'un a une solution (propre ;)) à me proposer je l'en remercie par avance :copain:

Bonne continuation à tous.

Re: [Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 00:35
par tuxce
Tu peux donner le contenu de ton .xinitrc?
Et eventuellement essayer avec seulement :

Code : Tout sélectionner

exec gnome-session
(si jamais t'avais plus de choses dedans)

Re: [Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 00:44
par Garett
Merci pour ta participation.

mon .xinitrc est un lien symbolique vers /etc/skel/.xinitrc et son contenu est :

Code : Tout sélectionner

#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

exec gnome-session
# exec startkde
# exec startxfce4
# ...or the Window Manager of your choice
Et

Code : Tout sélectionner

exec gnome-session
démarre correctement.

Re: [Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 00:51
par tuxce
Du coup, il n'y a plus qu'à supprimer le reste.
/etc/X11/xinit/xinitrc.d contient des scripts pour lancer dbus (et c'est ce qui casse le démarrage), pulseaudio, ..., définir des variables pour GTK, rien que ne fait GNOME en auto, donc pas besoin de le laisser.

Re: [Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 20:47
par Garett
Pas si simple que ça en fait ;)

J'ai supprimé le lien symbolique et fait une copie du .xinitrc
Maintenant il ressemble à ça :

Code : Tout sélectionner

exec gnome-session
Puis j'ai retenté le :

Code : Tout sélectionner

systemctl start startx@Garett.service
qui me renvoi toujours :

Code : Tout sélectionner

startx@Garett.service - startx automatique pour l'utilisateur Garett
	  Loaded: loaded (/etc/systemd/system/startx@.service; disabled)
	  Active: inactive (dead)
	  CGroup: name=systemd:/system/startx@.service/Garett

Nov 07 19:41:45 archlinux bash[621]: Avertissement du gestionnaire de fenêtres : Log level 32: Execution of main.js threw exception: Polkit.Error: No session for pid 764
Nov 07 19:41:45 archlinux bash[621]: gnome-session[644]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Nov 07 19:41:45 archlinux gnome-session[644]: WARNING: App 'gnome-shell.desktop' respawning too quickly
Nov 07 19:42:38 archlinux bash[621]: gnome-session[644]: CRITICAL: gsm_manager_set_phase: assertion `GSM_IS_MANAGER (manager)' failed
Nov 07 19:42:38 archlinux gnome-session[644]: CRITICAL: gsm_manager_set_phase: assertion `GSM_IS_MANAGER (manager)' failed
Nov 07 19:42:38 archlinux bash[621]: gnome-session[644]: Gtk-CRITICAL: gtk_main_quit: assertion `main_loops != NULL' failed
Nov 07 19:42:38 archlinux gnome-session[644]: Gtk-CRITICAL: gtk_main_quit: assertion `main_loops != NULL' failed
Nov 07 19:42:38 archlinux bash[621]: xinit: connection to X server lost
Nov 07 19:42:38 archlinux goa[748]: goa-daemon version 3.6.0 exiting [main.c:154, main()]
Nov 07 19:42:40 archlinux bash[621]: waiting for X server to shut down .Server terminated successfully (0). Closing log file.
De plus, j'ai l'impression que la situation s'est "dégradée" puisque maintenant la commande :

Code : Tout sélectionner

exec gnome-session
renvoi

Code : Tout sélectionner

** (gnome-session:810): WARNING **: Could not open X display
** (gnome-session:810): WARNING **: Impossible d'ouvrir l'affichage
Et je dois me relogger.

Re: [Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 21:36
par benjarobin
Hum, avant d'utiliser ce service, essaye déjà de lancer startx via la console connecté avec ton utilisateur.
Sinon tu peux aussi essayer cette méthode : https://wiki.archlinux.org/index.php/Au ... al_console + https://wiki.archlinux.org/index.php/Start_X_at_Login

Re: [Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 22:10
par tuxce
Garett a écrit :Pas si simple que ça en fait ;)
?
Tu voulais dire quoi par :
Garett a écrit :

Code : Tout sélectionner

exec gnome-session
démarre correctement.
?
Garett a écrit : De plus, j'ai l'impression que la situation s'est "dégradée" puisque maintenant la commande :

Code : Tout sélectionner

exec gnome-session
gnome-session doit être lancé après qu'X soit démarré, elle est à mettre dans le ~/.xinitrc et pas à lancer à part.
L'erreur est normale parce qu'il n'y a pas de X lancé et le exec remplace le shell d'où la nécessité de se reloguer.
benjarobin a écrit : Ce service me semble assez foireux
Pourquoi ?

Re: [Startx] démarrage automatique

Publié : mer. 07 nov. 2012, 22:50
par benjarobin
Hum en faite j'aurais du mieux me documenter sur PAMName :pleure: :oops: :pastaper:

Re: [Startx] démarrage automatique

Publié : jeu. 08 nov. 2012, 22:15
par Garett
tuxce a écrit :Tu voulais dire quoi par :
Garett a écrit :

Code : Tout sélectionner

exec gnome-session
démarre correctement.
?
Et bien ma session gnome démarrait.
tuxce a écrit :
Garett a écrit : De plus, j'ai l'impression que la situation s'est "dégradée" puisque maintenant la commande :

Code : Tout sélectionner

exec gnome-session
gnome-session doit être lancé après qu'X soit démarré, elle est à mettre dans le ~/.xinitrc et pas à lancer à part.
L'erreur est normale parce qu'il n'y a pas de X lancé et le exec remplace le shell d'où la nécessité de se reloguer.
Je ne suis pas sur de comprendre.
J'ai suivi tes conseils concernant le .xinitrc, ie : enlever le reste

Aurais-je fais quelque chose de travers ?

Re: [Startx] démarrage automatique

Publié : ven. 09 nov. 2012, 02:03
par Elbarto
comme tu utilises systemd il faut aussi s'assurer que startx soit lancé avec les commutateurs permettant que la session X soit lancée dans le même tty dans lequel tu t'es connecté,

ainsi si tu es dans le tty1 il faut taper :

Code : Tout sélectionner

startx -- vt1
si tu tapes uniquement startx sans aucune option derrière ça va donner l'impression que tout est Ok mais en fait il y aura tout un tas de problèmes potentiels qui vont apparaitre ( impossibilité de monter les périphériques USB, impossibilité d'accéder à la carte son, pas de possibilités de mise en veille et d'hibernation )

du coup faut voir le contenu des fichiers units que lance systemd, en vérifiant que tu as bien cette ligne avec les commutateurs '-- vt1':

Code : Tout sélectionner

ExecStart=/bin/bash -l -c 'startx -- vt1'
perso je te conseillerai d'abandonner startx si tu veux un truc full auto, un gestionnaire de connexion graphique comme slim ou kdm/gdm permettent la connexion automatique au boot et le lancement de l'interface graphique,

ça n'a rien à voir avec ton problème mais personnellement j'ai été contraint d'abandonner l'utilisation de startx depuis la dernière mise à jour de xorg et du driver ati, car un bug très subtil apparait avec le driver radeon200 en cas d'utilisation de startx/xinit --> au premier lancement de startx tout est ok, mais quand on se déconnecte de KDE et quand on relance startx une seconde fois alors un écran noir apparait dès qu'on bouge la souris, ce bug disparait comme par magie lorsqu'on utilise un gestionnaire de connexion graphique comme slim ou kdm/gdm, j'ai ouvert un rapport sur le bugzilla de xorg à ce sujet,

ce qui me fait penser que les développeurs quand ils déboguent leurs drivers utilisent de moins en moins startx/xinit qui semble une méthode un peu désuète en 2012 pour lancer une interface graphique

Re: [Startx] démarrage automatique

Publié : ven. 09 nov. 2012, 11:06
par tuxce
Le -- vt1 n'est plus nécessaire, xorg-server avait été mis à jour lors du passage à Gnome 3.6 pour l'intégrer.
@Garett: j'ai peut être raté un truc, je récapitule :
- Tu as essayé le startx@.service avec un lien vers /etc/skel/.xinitrc auquel tu as rajouté exec gnome-session => Ca n'a pas fonctionné
- Je te demande d'essayer avec juste exec gnome-session dans le ~/.xinitrc => tu me réponds que ça démarre correctement.
- Du coup, je te dis de garder comme ça
- Et là, ça ne marche plus ... :fou:

Re: [Startx] démarrage automatique

Publié : ven. 09 nov. 2012, 16:46
par Garett
Ce n'est pas tout à fait ça tuxce.

Je récapitule :
- J'ai essayé le startx@.service avec un lien vers /etc/skel/.xinitrc auquel j'ai décommenté exec gnome-session => Ca n'a pas fonctionné
- J'ai essayé juste la commande exec gnome-session => je te réponds que ça démarrait correctement.
- Du coup, j'ai tout viré dans le .xinitrc sauf exec gnome-session
- Et là, ça ne marche plus ... :fou:

@Elbarto
En fait, moi je pensais que lancer startx en ligne de commande à la connexion me permettrait d'alléger le système et d'améliorer la vitesse de démarrage de mon archlinux. Voici les raisons principales qui me pousse à en découdre avec startx@.service.
Maintenant je me suis peut-être complètement trompé et une autre solution serait-elle plus optimisée ?

Re: [Startx] démarrage automatique

Publié : ven. 09 nov. 2012, 17:14
par tuxce
Donc en gros, tu as lancé exec gnome-session dans une session X ... j'en vois pas l'intérêt mais ok, mon post n'était pas clair :)
Tu peux essayer en modifiant le service :

Code : Tout sélectionner

ExecStart=/bin/bash -l -c 'startx /usr/bin/gnome-session'
(je suppose que quand tu lances le service, tu n'es pas loggué dans une session graphique, on est bien d'accord)

Juste histoire de confirmer (comme c'est nouveau on ne sait jamais) quelqu'un d'autre avec gnome pourrait essayer ce service et confirmer (ou non) que ça fonctionne.

Re: [Startx] démarrage automatique

Publié : mar. 13 nov. 2012, 00:32
par Garett
J'ai modifié la ligne de startx@.service comme tu me l'as suggéré.
Puis j'ai essayé de lancé le service avec les deux différents .xinitrc (le complet et celui d'une seule ligne)

Aucun effet, les symptômes sont les mêmes.

P.S : A priori, aucune raison que je sois loggué dans une session graphique.

P.S 2 : Ai-je eu raison de penser qu'utiliser un script pour lancer ma session graphique était une meilleure solution (en terme de performance) que l'utilisation d'un gestionnaire de connexion graphique comme slim ou kdm/gdm ?

Re: [Startx] démarrage automatique

Publié : mar. 13 nov. 2012, 08:33
par tuxce
Là, je vois pas pourquoi ça plante chez toi ...
Tu peux poster la sortie de :

Code : Tout sélectionner

journalctl _SYSTEMD_UNIT=startx@Garett.service -a -b
(tu peux utiliser pastebin)
L'erreur est peut être avant dans les logs.
Garett a écrit :P.S 2 : Ai-je eu raison de penser qu'utiliser un script pour lancer ma session graphique était une meilleure solution (en terme de performance) que l'utilisation d'un gestionnaire de connexion graphique comme slim ou kdm/gdm ?
Si, par performance, tu entends le temps qu'il faut pour être sur ta session, oui, startx@.service lancera ta session plus vite, mais comparé à slim par exemple, la différence est minime (après si tu as un P4, je dis pas).