J'utilise les outils Gnome Tweak sur mon système, Ubuntu 12.04, avec quelques utilisateurs. Je souhaite modifier le facteur de mise à l'échelle du texte pour tous les comptes d'utilisateurs.
Si j'utilise gsettings set org.gnome.desktop.interface text-scaling-factor 0.7
, le travail est correct, mais uniquement pour l'utilisateur à l'origine de la commande. Le reste des utilisateurs conservent leurs paramètres, ce que je ne veux pas.
Je veux le faire à partir de la CLI car j'essaie de l'intégrer plus tard à la marionnette.
Changer la valeur par défaut dans le schéma Glib
Sudo nano /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml
Comme:
<key type="d" name="text-scaling-factor">
<range min="0.5" max="3.0"/>
<default>0.7</default>
<summary>Text scaling factor</summary>
<description>Factor used to enlarge or reduce text display, without changing font size.</description>
</key>
Compiler des schémas
Sudo glib-compile-schemas /usr/share/glib-2.0/schemas
Sinon, parce que vous voulez un moyen facile pour puppet
.
Vous pouvez créer un fichier de substitution dconf:
Sudo nano /usr/share/glib-2.0/schemas/30_my-text-factor.gschema.override
Ajoutez-y des clés et des valeurs de substitution, exemple:
[org.gnome.desktop.interface]
text-scaling-factor=0.7
Compiler des schémas
Sudo glib-compile-schemas /usr/share/glib-2.0/schemas
Les nouveaux utilisateurs et les utilisateurs utilisent les valeurs par défaut (ils n'ont jamais changé de valeur ou ils l'ont réinitialisée) obtiendront la nouvelle valeur effective.
Si vous souhaitez forcer les utilisateurs à utiliser la valeur par défaut (leur valeur personnalisée n’a aucun effet), ajoutez un verrou dconf:
Ajouter un nouveau fichier de verrouillage ou modifier un fichier existant à l'adresse:
/etc/dconf/db/gdm.d/locks/
Ajoutez cette ligne à celle-ci:
/org/gnome/desktop/interface/text-scaling-factor
Références:
J'ai en quelque sorte trouvé une solution qui fonctionne pour un utilisateur à la fois. Il ressemble à si utiliser:
su user_name bash -c 'gsetting set org.gnome.desktop.interface text-scaling-factor 0.7'
Il échoue à cause de:
connexion x11 rejetée en raison d'une authentification incorrecte
En effet, le cookie X win n'est pas reporté. Alors essayé les étapes suivantes:
root:~#echo $DISPLAY
root output:~#localhost:10.0
root:~#xauth list
output:~#
eglisa-bh/unix:12 MIT-MAGIC-COOKIE-1 9435aa7eb876e2edf3e4f29bbe90f42a
eglisa-bh/unix:10 MIT-MAGIC-COOKIE-1 5e987f3ce693dd4789fgc5c012067f31
root:~#su - student
student:~#DISPLAY=localhost:10.0; export DISPLAY
student:~#xauth add eglisa-bh/unix:10 MIT-MAGIC-COOKIE-1
5e987f3ce693dd4789fgc5c017f31
Est-ce que le truc et puis en courant à nouveau:
su user_name bash -c 'gsetting set org.gnome.desktop.interface text-scaling-factor 0.7'
L'échelle du texte passe à 0,7 comme souhaité.
J'ai aussi essayé de jouer avec Sudo en ajoutant à l'intérieur du fichier sudoers:
Defaults env_keep +="DISPLAY XAUTHORIZATION XAUTHORITY"
Mais cela n'a pas fonctionné non plus. S'il y avait un moyen plus facile, je l'apprécierais vraiment.