Un PC, plusieurs users, Gnome 3 et Awesome. Comment passer facilement les users via GDM

J'utilise Arch Linux avec Gnome 3.6 installé. Il y a plusieurs users sur ce PC avec leurs propres counts. Nous avions l'habitude d'utiliser simplement switch user button switch user au lieu de se déconnecter. Donc presque toujours plusieurs users sont connectés sur notre PC avec leurs propres applications en cours d'exécution, etc.

Je veux passer à Awesome et je veux save cela. Je veux pouvoir passer de ma session Awesome à la session Gnome de l'autre user sans se déconnecter de ma session. Je veux utiliser l'économiseur d'écran gnome comme économiseur d'écran dans ma session Awesome WM. Et c'est tout. C'est seulement 2 choses que je veux sauver de Gnome.

C'est possible? Quelle est la meilleure pratique pour définir de telles choses?

J'utilise Fedora linux. La plupart des gens dans notre ménage utilisent Gnome3 mais j'utilise Xmonad (qui est similaire à génial, mais mieux). Ce n'est pas un problème, car Xscreensaver est en cours d'exécution.

Lorsque Xscreensaver est démarré et que vous enregistrez l'écran et que vous déplacez la souris, deux options se trouvent sous le champ de saisie du mot de passe: New Login et OK . Le dernier est d'accepter le mot de passe pour déverrouiller l'économiseur d'écran. L'autre démarre GDM sur un nouveau VT.

Tout cela a fonctionné de la boîte. Je viens d'installer Fedora, puis Xmonad et Xscreensaver. Et j'ai mis l'option pour verrouiller l'écran si Xscreensaver enregistre l'écran. Parce que sinon vous n'avez pas l'option pour une nouvelle connection, mais juste quitter l'économiseur d'écran sur mousemovement.

Peut-être que cela est également facile à configurer dans Arch Linux. Ou peut-être que vous pourriez juste crèche de Fedora (ou d'un forum Fedora ou ask.fedoraproject.org). Je n'ai pas essayé si cela fonctionne avec Gnome-Screensaver en quelque sorte. Mais Xscreensaver s'adapte mieux à Xmonad.

Si vous pouvez vous en tenir à GDM, placez simplement un raccourci ou un file .desktop ou un élément de panneau pour pointer vers gdmflexiserver .

Une fois exécuté, il vous emmènera au prochain VT gratuit et vous présentera un greeter, alors que votre session précédente sera verrouillée.

Cela fonctionne même avec lightdm , mais vous ne pouvez pas exécuter plus d'une session par user.

Pour verrouiller votre session, gnome-screensaver-command --lock un raccourci vers gnome-screensaver-command --lock .

Obtenir ces deux commands dans Awesome ou installer le package synapse partir d'AUR pourrait faciliter la transition.

Si vous désactivez gdm, vous pouvez le faire en utilisant la commutation startx et VT. Vous devrez peut-être spécifier un affichage différent, par exemple, startx -- :1 mais tout se réfère au même périphérique physique si vous en avez un seul configuré.

Par exemple: L'user A se connecte sur VT 1, commence une session X avec startx . startx maintenant à VT 2 via Ctrl-Alt-F2 et connectez-vous en tant qu'user B, puis startx . Si vous obtenez un message, "X server déjà en cours d'exécution sur 0: 0" utilisez startx -- :1 .

Vous pouvez maintenant basculer entre les deux sessions X, appartenant à deux users différents avec des DEs différents, etc., en changeant simplement les VT. Indolore et instantané. Vous n'avez pas à vous déconnecter de l'un d'entre eux, bien que si la security est une préoccupation et que ce sont deux personnes différentes, vous voudrez verrouiller votre écran; la commutation VT devrait toujours être OK (je ne fais généralement pas le locking de l'écran depuis que je l'utilise moi-même, donc YMMV).

Je n'utilise pas aussi gnome, donc je ne peux pas dire pour cela travaillera avec tous les DEs. Il ne sera certainement pas avec n'importe quel type de système de connection GUI (GDM, XDM, etc.) actif, vous devez démarrer à la console, la connection, startx.

Sur certains systèmes, cela fonctionne très simplement: vous vous connectez sur VT 1, votre session X est également sur VT 1, et même pour VT 2. Sur les autres (ou j'ai remarqué, parfois sur le même. ..) la session X se termine sur un VT séparé, ce qui signifie que vous devez sortinger cela à chaque fois et vous finirez par utiliser deux VT par user.