6

I installed redshift by using the following command in terminal:

sudo apt-get install redshift redshift-gtk

But while running the program i ended up with errors:

enter image description here

So i installed geoclue with the following command:

sudo apt install geoclue

However even after installing geoclue package, I am still facing the same problem.

5 Answers5

7

The problem is not with geoclue package. You don't need to install geoclue. It is because you have not configured Redshift. Redshift sets the color temperature according to your location. The simplest fix to this issue is to enable location services:
System Settings > Security & Privacy > Location services > Turn ON

But you can manually configure Redshift to set custom values for color temperature and location. For that, open up your browser and search for the latitude and longitude for your area, for example, new york latitude and longitude.

Once you get the values for latitude and longitude for your area, then search for Startup Applications in your computer. Most probably you will have the entry for Redshift. Click on the Redshift entry and then click Edit. Then in the command section enter this command:

redshift-gtk -l [LATITUDE]:[LONGITUDE] -t 6500:3400

Replace [LATITUDE] and [LONGITUDE] with your values. For example my command goes like:

redshift-gtk -l 20.5937:78.9629 -t 6500:3400

Note:- If for some reason you don't see the entry for Redshift in the startup applications menu, just click on the Add button instead of the Edit button, provide a name for example, Redshift and then enter the above command.

The values 6500 and 3400 represent the color temperature values for day and night respectively. The value 6500 makes no color changes and the screen is perfectly calibrated. If you want to eliminate blue light on day time also, change the value 6500 to 5500. Again you can have your own custom values. Just Save the settings and Reboot to apply changes.

4

Redshift stopped working in Ubuntu 16.04 (yes, still using it in 2020).

I edited my ~/.config/redshift.conf into the following:

[redshift]
temp-night=4500

location-provider=manual

[manual] lat=55.953 lon=-3.189

Note: I'm using manual location provider (not geoclue2).

Daniel C
  • 4,170
2

Depending on your window manager you may have to manually allow Redshift to access GeoClue.

Edit GeoClue's config

sudo nano /etc/geoclue/geoclue.conf

Append the following lines to /etc/geoclue/geoclue.conf

[redshift]
allowed=true
system=false
users=

Then restart Redshift kill $(pgrep '[r]edshift*') && redshift-gtk & disown

J. Starnes
  • 1,979
0

I suddenly had this problem after using redshift-gtk for many years without issue. The screen failed to turn red after startup and there was a geoclue error after disabling from the indicator icon menu.

On 18.04, the error is for "geoclue2". However, geoclue-2.0 was already installed on my system. I fixed this by reinstalling the geoclue-2.0 package:

sudo apt update
sudo apt install --reinstall geoclue-2.0
mchid
  • 44,904
  • 8
  • 102
  • 162
-1

Try turning on location. Unfortunately most Desktop environment settings don't have a location ON/OFF feature, but we can install gnome settings to get one:

sudo apt install gnome-control-center

Enable location services in *Gnome Control Center > Privacy > Location services

You can also try installing geoclue2

sudo apt install geoclue-2.0

You can also run redshift with sudo

sudo redshift

You can also try adding these lines to /etc/geoclue/geoclue.conf:

[redshift]
allowed=true
system=false
users=

Then run:

sudo service geoclue restart

You can create a configuration file to set latitude and longitude manually (this worked for me)

Visit this site the file your lat & lon: https://www.latlong.net/

Go to ~/.config directory & create a file redshift.conf with the following content (adding your latitude and longitude on 45th and 46th lines):

[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=0

One more possible solution: run redshift in background:

  • Remove redshift-gtk extension from panel and stop autostarting redshift in startup programs

  • Add this startup command to run redshift in background after login

    redshift -l 7:81 -t 5700:3600 -g 0.8 -m randr -v
    

    You can change 0.8 to adjust brightness(0.1 - 1)

Links:

Zanna
  • 72,312