How can I adjust the display color on elementary OS? They only offer predefined profiles that I can set my monitor to, but I can't calibrate any of them. I already have gnome color manager and icc installed.

I want to adjust contrast, red, green, and blue levels, and etc.

EDIT: I figured it out, use xgamma(obsolete see xrandr solution below) command. I didn't realize the magnitude of numbers represents color contrast as well as adjusting color hue.

2 Answers 2


You can modify gamma settings (colors and effectively contrast too) using xrandr tool.

First determine the output name of your monitor:

For example:

ravan@ravan:~$ xrandr -q | grep connected
VGA1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 410mm x 230mm
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

In the above example I have a monitor connected and seen as output VGA1.

Using xrandr

From man page of xrandr (See man xrandr)

Xrandr is used to set the size, orientation and/or reflection of the outputs for a screen. It can also set the screen size.


xrandr --output [DISPLAY_NAME] --gamma [R_VALUE]:[G_VALUE]:[B_VALUE]


xrandr --output VGA1 --gamma 1.28:1:1.28 # for purple

In the above example gamma values are in format Red:Green:Blue

See here for corresponding numeric values for RGB colors.

In RGB color table, see decimal code and if you have 128 then use 1.28


If you want to revert then use: 1:1:1 to restore the default state.

EDIT: (tested on freya)

To make changes permanent, add the script to start-up applications.

Open terminal and run:

nano  monitor_display.sh

Add the following lines.

sleep 50
xrandr --output VGA1 --gamma 1.28:1:1.28 #same command you used previously.

Now Ctrl+X --> Y--> ENTER.

Now run:

chmod +x monitor_display.sh

Now to add to startup applications:

Open system settings --> applications --> startup --> click on + and add the command:

/bin/bash monitor_display.sh

Now reboot.

Note: You will see custom command .desktop file in ~/.config/autostart

  • 1
    Also, how do you make the gamma settings permanent? It resets to 1:1:1 after reboot.
    – Dobob
    Commented Dec 29, 2015 at 16:11
  • I read in the Ubuntu forum that you can save a xorg.conf file in "etc/x11", but I don't have an xorg.conf already so I tried to make one and I didn't have permission. The link: askubuntu.com/questions/63681/…
    – Dobob
    Commented Dec 30, 2015 at 7:14
  • @Dobob I will add in few minutes. I have to test before post, :)
    – Ravan
    Commented Dec 30, 2015 at 7:50
  • @Dobob I have edited my answer :) please let me know
    – Ravan
    Commented Dec 30, 2015 at 8:59
  • It works. I did change "sleep 50" to "sleep 5". The only downside is that "xrandr --verbose -q" returns inaccurate gamma settings. I have set my gamma to "1.0 : 0.93 : 1.0", but xrandr reports "1.0: 1.1: 1.0". Any way to check current gamma settings? It seems that xrandr uses approximated gamma and brightness settings, whereas "xgamma" doesn't.
    – Dobob
    Commented Dec 30, 2015 at 11:26

Try DisplayCal https://displaycal.net/

You can both calibrate, and assign profiles to a display. Download the package, install with a package manager (e.g. Eddy) and then run DisplayCal app. To assign a profile, go to File >> Install display device profile

You can also calibrate using that tool too if you have a compatible colorimeter (it supports many third party ones).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.