December 9, 2018 Update
I found source code for program sct
which allows user to set color temperature. It has "cribbed the code" from redshift
and provides mapping for red, green and blue values:
/* cribbed from redshift, but truncated with 500K steps */
static const struct { float r; float g; float b; } whitepoints[] = {
{ 1.00000000, 0.18172716, 0.00000000, }, /* 1000K */
{ 1.00000000, 0.42322816, 0.00000000, },
{ 1.00000000, 0.54360078, 0.08679949, },
{ 1.00000000, 0.64373109, 0.28819679, },
{ 1.00000000, 0.71976951, 0.42860152, },
{ 1.00000000, 0.77987699, 0.54642268, },
{ 1.00000000, 0.82854786, 0.64816570, },
{ 1.00000000, 0.86860704, 0.73688797, },
{ 1.00000000, 0.90198230, 0.81465502, },
{ 1.00000000, 0.93853986, 0.88130458, },
{ 1.00000000, 0.97107439, 0.94305985, },
{ 1.00000000, 1.00000000, 1.00000000, }, /* 6500K */
{ 0.95160805, 0.96983355, 1.00000000, },
{ 0.91194747, 0.94470005, 1.00000000, },
{ 0.87906581, 0.92357340, 1.00000000, },
{ 0.85139976, 0.90559011, 1.00000000, },
{ 0.82782969, 0.89011714, 1.00000000, },
{ 0.80753191, 0.87667891, 1.00000000, },
{ 0.78988728, 0.86491137, 1.00000000, }, /* 10000K */
{ 0.77442176, 0.85453121, 1.00000000, },
};
The three columns above are values for Red, Green and Blue.
November 4, 2018 Update
I wrote a collection of bash scripts to adjust brightness and gamma gradually at dawn and dusk over a 90 minute to 120 minute period. The full brightness setting is:
xrandr --output DP-1-1 --gamma 1:1:1 --brightness 1.0
The nighttime setting is:
xrandr --output DP-1-1 --gamma 1.1:0.8:0.7 --brightness 0.55
Original Answer
Finally found one answer: MORE OF XRANDR OR BLUE LIGHT EXPOSURE This script is presented:
#!/bin/sh
night_mode() {
for disp in $(xrandr | sed -n 's/^\([^ ]*\).*\<connected>.*/\1/p'); do
xrandr --output $disp --gamma $1 --brightness $2
done }
case $1 in
off) night_mode 1:1:1 1.0 ;;
*) night_mode 1:1:0.5 0.7 ;;
esac
The script reduces blue light component and brightness of all Xorg displays attached. Simply save it in your bin
directory, chmod +x
it and, if you want to, add a cron
job or keyboard shortcut to call the function.
How it works? Simply type in the script name without any parameters to reduce blue light. To return to normal setting, add off
parameter after the command.
Install the following extension:
https://github.com/laerne/desaturate_all
To do this copy the files into a folder called .local/share/gnome-shell/extensions/desaturate_all@nicolas.brack.mail.be
Logout and log back in, then you should be able to enable the extension through gnome-tweak-tool
or by browsing to https://extensions.gnome.org/local
Once enabled, grayscale can be quickly turned on and off with the art pallet in the top right coner.
I think you will agree that a grayscale screen with Night Light works better than better Night Light by itself (if you use a color tempeture that is super low). Some things to look for: the scroll bar, the picture of colored penciles, Firefox logo, and the plant in the bottom left.
Here are some comparison screenshots:
Full Color
Grayscale
Night Light/Redshift with Full Color
Night Light/Redshift with Grayscale
Best Answer
Not really a good one but kinda half-baked solution is using a GNOME shell extension called "Night Light Slider". It adds a slider to control the colour temperature manually:
(screenshot source: extension's homepage at extensions.gnome.org)
Also you may change Night Light's colour temperature using dconf Editor/
gsettings
as suggested here: How to adjust the hue (intencity) of gnome night light?