Primero, mi objetivo final es el mismo que enesta pregunta. Soy usuario de Dvorak, pero quiero que QWERTY, no Dvorak, sea la distribución de teclado predeterminada en una sesión de invitado. Si conoce una respuesta directa a eso en lugar de a la pregunta siguiente, también se lo agradeceremos.
Puedo cambiar la distribución del teclado a QWERTY con setxkbmap -layout us
.
Algunas búsquedas en Google me dicen que si creo un script de shell /etc/guest-session/prefs.sh
, se ejecutará cuando comience la sesión de invitado.
Entonces creé un prefs.sh
archivo que contiene solo ese comando:
setxkbmap -layout us
Lo que esperaba que sucediera era poder ejecutar una sesión de invitado y configurar automáticamente la distribución del teclado en QWERTY. Lo que realmente sucedió fue que cuando intenté ejecutar una sesión de invitado, simplemente falló y me devolvió a la pantalla de inicio de sesión.
Debo estar entendiendo mal algo, pero no sé qué. ¿Algunas ideas?
Si es relevante: estoy usando Ubuntu 12.04.
Respuesta1
De la forma en que lo hizo, el comando se ejecutó prematuramente, es decir, antes del inicio real de la sesión de invitado. Pruebe esto en su lugar:
echo 'setxkbmap -layout us' >> $HOME/.profile
Acabo de reescribir eltutorial sobre cómo personalizar sesiones de invitados. Quizás te ayude a entenderlo mejor.
Editar:
Esto se ha vuelto más complicado en versiones posteriores de Ubuntu. Estas líneas /etc/guest-session/prefs.sh
funcionan para mí en Ubuntu 15.10:
echo "gsettings set org.gnome.desktop.input-sources sources \"[('xkb', 'se'), ('xkb', 'us')]\"" >> $HOME/.profile
echo "gsettings set org.gnome.desktop.input-sources current 1" >> $HOME/.profile
El ('xkb', 'se')
valor es el predeterminado de mi sistema (una distribución de teclado sueco). Básicamente, configuro una lista con los valores predeterminados de mi sistema y la distribución del teclado que quiero usar en las sesiones de invitados: inglés (EE. UU.). Luego le digo al sistema que haga que el segundo valor de la lista sea la distribución del teclado actual. 0 (cero) habría sido el primer valor.