redshift-scheduler, as the name implies is a scheduler program for redshift.
Redshift adjusts the color temperature of your screen according to your surroundings (meaning according to the time of day and your location). This may help your eyes hurt less if you are working in front of the screen at night.
However, not everyone has the same day-schedule and likes their screen "turning red" at ~17:00 in the afternoon.
What does it do?
Read the description over at redshift's page for an introduction to the general idea of "screen temperature changing".
You can then determine whether redshift is good enough for you, or you need the advanced control that redshift-scheduler offers.
What problems with redshift does this fix?
redshift-scheduler addresses the following problems with the way redshift works:
No sane control over the screen temperature over the day
- redshift uses the time of day and your location to "magically" determine a temperature value (which you might not always like)
- redshift-scheduler gives you a way configure the exact temperature and temperature transitions at any time of the day
No control over how gradually the temperature changes
- redshift's temperature transitions are somewhat fast (strikingly visible and thus, annoying)
- redshift-scheduler's temperature transitions can be very gradual (invisible to the user)
How does it work?
redshift-scheduler uses a configuration file that specifies a number of rules. Rules define time periods within the day and their corresponding temperature (or temperature transition).
Generally, rules state something like this:
- from 11:00 to 18:00, I'd like the maximum screen temperature (6500K)
- from 18:00 to 20:00, I'd like a gradual decrease from 6500K to 5000K
- from 20:00 to 23:30, I'd like a gradual decrease from 5000K to 4500K
To learn more, see the sample/default rules file (in the
redshift-scheduler calculates the temperature at any given moment of the day and periodically invokes redshift to apply it. Therefore, you need redshift installed as well.
redshift-scheduler is written in Vala and compiles to native code.
Build from source (requires:
redshift-scheduler executable would appear in the newly created
redshift-scheduler executable file anywhere you'd like.
Copy the default rules file (
Copy the desktop file (
This will allow to add the tool as a startup item using e.g. the GNOME Tweak Tool
Make sure you have redshift installed, as redshift-scheduler depends on it.
For distro packagers
A package would:
- build the executable and stage it for copying to
/usr/bin/or some other such location
resources/rules.conf.dist(the default config) for copying to
resources/redshift-scheduler.desktop(the desktop file) for copying to
The program is meant to start and run with user privileges.
You can set it up to start on desktop environment start-up (with
The first time you can run
redshift-scheduler from the command-line.
During that first start,
~/config/redshift-scheduler/rules.conf will be created, based on the default configuration at
redshift-scheduler runs during the day and controls the screen temperature according to the rules in
Rules can be customized to your liking. Rule changes take effect immediately (without needing a program restart).
The ability to temporarily disable temperature changes ("stop for 1 hour", etc.)
A GUI tray program that allows certain features of redshift-scheduler to be controlled with the mouse (disabling temporarily, showing the current temperature)