45

I just switched to Ubuntu, and on Windows I was using f.lux. I was able to set the temperature to a certain time and leave it at that, it wouldn't change at all.

Now I installed Redshift and I can't do that anymore. Could some one help, please?

Eric Carvalho
  • 53,609
  • 102
  • 137
  • 162
Richardplury
  • 453
  • 1
  • 4
  • 4

5 Answers5

50

You can permanently set the color temperature from the command line:
Open (gnome-) terminal, type the command:

redshift -O <temperature>

and press Return

To set it to (e.g.) 3700:

redshift -O 3700

To reset to "neutral":

redshift -x

See for more (command line) options:

man redshift

(Given the fact that Redshift is installed :))

Jacob Vlijm
  • 82,471
  • 12
  • 195
  • 299
  • 7
    When I type redshift -O for example, it works for about a second, then goes back to normal... What should I do in this situation? edit: nevermind, i got it. thank you so much – Richardplury Dec 27 '14 at 17:12
  • 3
    @Richardplury I have same issue, it goes back after a sec. What did you solve it? – Abhishek Bhatia May 03 '16 at 04:08
  • 1
    same here, always reverts back to defaults – Bachalo Dec 15 '16 at 23:22
  • 4
    You must disable Redshift in the top bar to set the temperature with the terminal. You can do this by clicking the icon and pressing Enabled to uncheck it. @eco_bach – Matt Kleinsmith Mar 01 '18 at 21:01
  • 4
    I had to completely quit the top bar gtk app. I find redshift is a bit finnicky with starting multiple copies, not being able to distinguish between them properly. – Caleb Stanford Nov 26 '18 at 03:59
  • ... alternatively run `pkill redshift` if it resets the color after some seconds, and after that `redshift -O 1234` again – MacMartin Apr 23 '19 at 19:20
  • 1
    If `redshift-gtk` runs at the same time as you use `redshift` from the terminal, then `redshift-gtk` will override any terminal command used. So first make sure to kill the `redshift-gtk` process. – alexpanter Oct 18 '20 at 15:15
  • I would love to know if there is a way to make this from the settings on the GUI. changing even this via terminal regularly seems a bit too much of linux for a normal user. I can't find any setting on the redshift icon. –  Dec 01 '20 at 00:20
  • @6005: looks like Redshift won't fix that [issue with multiple instances running at the same time](https://github.com/jonls/redshift/issues/218) any time [soon](https://github.com/jonls/redshift/issues/556). – Dan Dascalescu Jan 29 '21 at 09:53
32

If you use redshift-gtk then @Jacob's method will not work.

You need to create a configuration file at $HOME/.config/redshift.conf to change it's settings. Sample configuration file creation described in it's official page, quoted below:

Configuration file

A configuration file can be created, but the documentation is a bit sparse. You’ll have to create it manually and put it in ~/.config/redshift.conf. The following is an example of a configuration file:

; Global settings for redshift
[redshift]
; Set the day and night screen temperatures
temp-day=5700
temp-night=3500

; Enable/Disable a smooth transition between day and night
; 0 will cause a direct change from day to night screen temperature.
; 1 will gradually increase or decrease the screen temperature.
transition=1

; Set the screen brightness. Default is 1.0.
;brightness=0.9
; It is also possible to use different settings for day and night
; since version 1.8.
;brightness-day=0.7
;brightness-night=0.4
; Set the screen gamma (for all colors, or each color channel
; individually)
gamma=0.8
;gamma=0.8:0.7:0.8
; This can also be set individually for day and night since
; version 1.10.
;gamma-day=0.8:0.7:0.8
;gamma-night=0.6

; Set the location-provider: 'geoclue', 'geoclue2', 'manual'
; type 'redshift -l list' to see possible values.
; The location provider settings are in a different section.
location-provider=manual

; Set the adjustment-method: 'randr', 'vidmode'
; type 'redshift -m list' to see all possible values.
; 'randr' is the preferred method, 'vidmode' is an older API.
; but works in some cases when 'randr' does not.
; The adjustment method settings are in a different section.
adjustment-method=randr

; Configuration of the location-provider:
; type 'redshift -l PROVIDER:help' to see the settings.
; ex: 'redshift -l manual:help'
; Keep in mind that longitudes west of Greenwich (e.g. the Americas)
; are negative numbers.
[manual]
lat=48.1
lon=11.6

; Configuration of the adjustment-method
; type 'redshift -m METHOD:help' to see the settings.
; ex: 'redshift -m randr:help'
; In this example, randr is configured to adjust screen 1.
; Note that the numbering starts from 0, so this is actually the
; second screen. If this option is not specified, Redshift will try
; to adjust _all_ screens.
[randr]
screen=1

Another sample configuration also found at Ubuntu Documentation.

Mark
  • 283
  • 2
  • 10
4

For those who are looking for answer to this question "When I type redshift -O for example, it works for about a second, then goes back to norma‍l... What should I do in this situation? "

Try - Go to the top of your screen -> The redshift icon -> Click on Enable to disable it -> the go on terminal and type

redshift -O <Temperature>

Worked for me

Puneet
  • 41
  • 3
2

Redshift GTK (and normal redshift) can be run with options to specify how it is run:

 redshift-gtk -l 52.6:1.6 -t 5700:3500 -g 0.82 -m randr -v

In the above command these commands are used:

  • -l specifies your locations rough coordinates, so it can sync with sunrise/sunset. Usually redshift-gtk tries looking up your location but this won't work unles your computer has GPS so it easier to set manually, using a mapping service to give a approximation of your location (e.g. with with OpenStreetMap)
  • -t sets the color temperature of the screen, for day and for night respectively.
  • -g sets the gamma correction apply
  • -m the method to use. This will likely depend on your desktop compositor.
  • -b can also be used to set screen brightness (also DAY:NIGHT, with values between .1 & 1.

This works largely the same as redshift (and uses pretty much the same options as in man redshift), except it runs with a icon so you can turn it off with switching to terminal. You can run the above command in a terminal, your desktops command launcher (usually Alt+F2), or even create a launcher.

Otherwise it may be better to use a configuration file as in @Mahmudul Hasan Shohag's answer.

Wilf
  • 29,694
  • 16
  • 106
  • 164
0

Using Debian 10 (KDE), I solved the "1 second issue" going to:

System Settings > Startup and Shutdown > Autostart > double-click on Redshift > Application > Change "Command:" line "redshift-gtk" to "redshift -O 3700" (without quotes)

That changed the temperature permanently.

Borjovsky
  • 173
  • 1
  • 9