Redshift adjusts the color temperature of your screen according to your surroundings. This may help your eyes hurt less if you are working in front of the screen at night. This program is inspired by f.lux (read here for the reason why I started this project).
Download
Latest release is redshift 1.7 published on 2011-07-04. There are also packages available for some distributions:
- Arch Linux: Package in the Arch Community Repository.
- Debian: Packages are included in Squeeze.
- Fedora: Packages are available from the official sources.
- FreeBSD: Package in the official Ports repository.
- Frugalware Linux: Package overview here.
- Gentoo: Package in the main package tree.
- Mandriva: Packages will be submitted it after 2010.1 is released.
- OpenBSD: Package is reportedly available from official sources.
- Ubuntu: Packages for Ubuntu.
- Windows: Experimental builds (it’s a command line utility; be aware of windows limitations):
Project page (bug tracker)
This is the project page for redshift. Please report bugs or ask questions there.
Project description
Redshift adjusts the color temperature according to the position of the sun. A different color temperature is set during night and daytime. During twilight and early morning, the color temperature transitions smoothly from night to daytime temperature to allow your eyes to slowly adapt. At night the color temperature should be set to match the lamps in your room. This is typically a low temperature at around 3000K-4000K (default is 3700K). During the day, the color temperature should match the light from outside, typically around 5500K-6500K (default is 5500K). The light has a higher temperature on an overcast day.
Technical details
On linux and similar systems the color temperature is set with an X server extension. On the windows platform it is set using GDI. The color temperature is changed by setting appropriate gamma ramps. If you have configured your own gamma ramps they will be overwritten but in that case you probably care too much about color accuracy to use this program anyway. Your graphics driver and X server needs to either support at least RANDR version 1.3 or the VidMode extension.
Redshift assumes that your screen will produce light at a color of 6500K when no color correction is applied by the program. Thus, 6500K is the neutral temperature. Setting the color temperature to a value higher than this results in more blue light, and setting a lower value will result in more red light.
Configuration options
Redshift will continously update the color temperature at regular intervals. One shot mode can be selected if you only want to do one adjustment. The color adjustments done by Redshift can be temporarily toggled on and off by sending it the USR1 signal:
$ pkill -USR1 redshift
The command line options are explained in the following paragraphs. All options have reasonable defaults. You’ll need to specify your current location only if redshift can’t obtain the location from an automatic location provider. All color adjustment methods will be tried until one that works is found unless you explicitly select one. The same applies to location providers.
-h Display this help message -v Verbose output -V Show program version -b N Screen brightness to apply (max is 1.0) -c FILE Load settings from the specified configuration file -g R:G:B Additional gamma correction to apply -l LAT:LON Your current location -l PROVIDER Select provider for automatic location updates (Type `list' to see available providers) -m METHOD Method to use to set color temperature (Type `list' to see available methods) -o One shot mode (do not continously adjust color temperature) -x Reset mode (remove adjustment from screen) -r Disable temperature transitions -t DAY:NIGHT Color temperature to set at daytime/night
Example (location is Copenhagen, Denmark):
$ redshift -l 55.7:12.6 -t 5700:3600 -g 0.8 -m vidmode -v
Configuration file
A configuration file can be created, but the documentation is a bit sparse. You’ll have to create it manually. There’s an example here.
Status icon
Start the program gtk-redshift instead of redshift, with the same arguments as you would pass to redshift. This will create an icon for Redshift in the system tray. The icon will allow you to toggle Redshift on and off. Thanks goes to the Tango Desktop Project for the icon. gtk-redshift requires at least Python 2.6 and PyGTK 2.12.

Redshift status icon
Automatic location provider
Redshift can automatically determine your current location from Geoclue. The location can also be specified manually either with a command line option or in the configuration file.
Known bugs and limitations
- Redshift won’t affect the color of your cursor when your graphics driver is configured to use hardware cursors. Some graphics drivers have an option to disable hardware cursors in
xorg.conf.
Comments, suggestions, patches or donations will be greatly appreciated.

Pingback: -=SUbWAY=- » Blog Archive » How lack of sleep turned my vision red (or: combating insomnia with science)
Pingback: Talk 145: vim vim win | RadioTux GNU/Linux
Pingback: Redshift, f.lux i temperatura światła | KHRoN'z blog
Pingback: How to Reduce Computer Eye Strain
Pingback: F.lux Suits your Eyes to Daylight Changes on the Screen - Hack How | Hack How
Pingback: Logiciels à avoir by gasp - Pearltrees
Pingback: [patch request] - f.lux / nighttime color temperature display - webOS Nation Forums
Pingback: Sleep management: Controlling Blue Light Exposure | Post-Neolithic (n̄)