Como definir o atalho de teclado para “alternar usuário” no Xubuntu?

Como definir o atalho de teclado para “alternar usuário” no Xubuntu?

Estou tentando criar um atalho de teclado no Xubuntu (13.04), mas não tenho ideia do que colocar no comando. Qual é o comando para invocar o switch user?

Responder1

Eu verifiquei o código-fonte do plug-in 'botão de ações' integrado ao painel xfce4 e o mecanismo de troca de usuário usa gdmflexiserver, enquanto a maioria das outras ações usa parâmetros para xfce4-session-logout.

A fonte foi obtida com apt-get source xfce4-panel; a informação estava em ~/xfce4-panel-4.10.0/plugins/actions/actions.c:

case ACTION_TYPE_SWITCH_USER:
      succeed = g_spawn_command_line_async ("gdmflexiserver", &error);
      break;

Você encontrará o executável em /usr/lib/lightdm/lightdm/gdmflexiserver, que na verdade é apenas um script:

#!/bin/sh
#
# Copyright (C) 2011 Canonical Ltd
# Author: Michael Terry <[email protected]>
# 
# This program is free software: you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation, version 3 of the License.
#
# See http://www.gnu.org/copyleft/gpl.html for the full text of the license.

if [ -z "$XDG_SEAT_PATH" ]; then
      # something went wrong
      exit 1
fi

dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.DisplayManager $XDG_SEAT_PATH org.freedesktop.DisplayManager.Seat.SwitchToGreeter

Não está em $PATH, portanto, se você usá-lo em um script, precisará especificar o caminho absoluto. Não tenho certeza se são necessárias outras opções, mas adicionarei mais algumas informações se for o caso.

Comandos úteis para scripts também podem ser encontrados na página de manual do xfce4-session-logout, embora a ação de troca de usuário não seja mencionada lá, pois usa um utilitário diferente chamado gdmflexiserver.

informação relacionada