I am using gnome tweak tools on my system which is Ubuntu 12.04 with a few users set. I want to change the text scaling factor for all the user accounts.

If I use gsettings set org.gnome.desktop.interface text-scaling-factor 0.7 does the job fine but only for the user that is issuing the command. The rest of the users retain their settings which I don't want.

I want to do this from CLI since I am trying to incorporate this later to puppet.

2 Answers 2


Change defaults by editing the original schemas

  1. Change default value in Glib schema

     sudo nano /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml


         <key type="d" name="text-scaling-factor">
         <range min="0.5" max="3.0"/>
         <summary>Text scaling factor</summary>
         <description>Factor used to enlarge or reduce text display, without changing font size.</description>
  2. Compile schemas

     sudo glib-compile-schemas /usr/share/glib-2.0/schemas

Changing defaults by creating an override file

Otherwise, because you want an easy way for puppet.

  1. You can create a dconf override file:

     sudo nano /usr/share/glib-2.0/schemas/30_my-text-factor.gschema.override
  2. Append override keys & values to it, example:

  3. Compile schemas

     sudo glib-compile-schemas /usr/share/glib-2.0/schemas

The new users and the users uses default (They never changed value or they have reset it) will get the new value effective.

Force all users to use defaults using a lock file

If you want to force users to use default value (their customized value has no effect), add a dconf lock:

  1. Add new lock file or change an existing one at:

  2. Append this line to it:



  • Thank a lot. this works as dreamed. My only issue is that i want to do this from puppet which means i need to make a template out of it and change the value through a variable. Need to try it but it looks feasible.
    – kostasp
    May 22, 2014 at 10:15
  • @kostasp, then it is better to make an override file instead of changing original schema file /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml. See examples: ls /usr/share/glib-2.0/schemas/*.gschema.override
    – user.dz
    May 22, 2014 at 13:54
  • This didn't work for me - I posted a question with my problem here: askubuntu.com/questions/723267/… Jan 20, 2016 at 9:21
  • @RobinWinslow , thank you , I made a mistake. The value should be without quotation marks. you could delete the other question as there is no need for different answer.
    – user.dz
    Jan 20, 2016 at 10:17
  • 1
    Ah thanks! I swear I tried that. Never mind. I'm going to leave my question there 'cos I think it adds value by mentioning this error message. Someone might google that same error message (as I tried to do) and find my question. Jan 20, 2016 at 10:32

I sort of found a working solution working for one user at a time. It looks like if use:

su user_name bash -c 'gsetting set org.gnome.desktop.interface text-scaling-factor 0.7'

It fails because of:

x11 connection rejected because of wrong authentication

This is because X win cookie is not carried over. So tried the following steps:

root:~#echo $DISPLAY
root output:~#localhost:10.0
root:~#xauth list
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

Does the trick and then by running again:

su user_name bash -c 'gsetting set org.gnome.desktop.interface text-scaling-factor 0.7'

The text scale changes to 0.7 as wanted.

I've tried messing with sudo as well by adding inside the sudoers file:


But this also didn't work. If there is any easier way I would really appreciate it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .