Redshift (Русский)
Из официальной страницы проекта:
- 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 [...].
Redshift регулирует цветовую температуру экрана в зависимости от вашего окружения. Это может помочь вашим глазам меньше уставать, если вы сидите за экраном в ночное время. Эта программа вдохновлена f.lux
Проект разработан на GitHub.
Contents
Установка
Пакет redshift доступен из официальных репозиториев. Или же можно установить собранный с минимальными зависимостями redshift-minimalAUR из AUR.
Окружение рабочего стола
Для окружения рабочего стола доступна утилита redshift-gtk
входящая в пакет redshift. Redshift-gtk будет отображать значок в системном трее для управления приложением. Redshift-gtk требует установки дополнительных зависимостей python-gobject, python-xdg и librsvg доступных из официальных репозиториев. Пользователи KDE могут использовать пакет kdeplasma-applets-redshiftAUR[ссылка недействительна: package not found] из AUR.
Автозапуск
Есть два способа, позволяющих реализовать автозапуск redshift:
- Используя один из двух предоставленных файлов юнитов службы systemd (см. Использование юнитов systemd):
/usr/lib/systemd/user/redshift.service
или/usr/lib/systemd/user/redshift-gtk.service
.
- При запущенном redshift-gtk нажать правой кнопкой мыши по значку в системном трее и выбрать 'Autostart'.
Конфигурация
Redshift для работы требует как минимум указать ваши координаты, т.е. широту и долготу вашего местоположения. Redshift использует несколько процедур для получения вашего местонахождения. Если ни одина из них не сработала (например не установлено ни одной из используемых вспомогательных программ), вы должны ввести местоположение вручную. Для большинства мест/городов простым способом будет посмотреть страницу Википедии нужного места и взять из неё значения (указать в поисковом запросе "координаты").
Быстрый старт
Чтобы запустить приложение, используя базовую конфигурацию, задайте:
$ redshift -l LAT:LON
где соответственно LAT - широта и LON - долгота вашего местонахождения.
Автоматическое определение расположения основываясь на GPS
Можно использовать gpsd для автоматического определения вашего местоположения посредством GPS и использовать его данные в Redshift. Создайте следующий скрипт, который будет передавать значения $lat
и $lon
в redshift -l $lat;$lon
:
#!/bin/bash date #gpsdata=$( gpspipe -w -n 10 | grep -m 1 lon ) gpsdata=$( gpspipe -w | grep -m 1 TPV ) lat=$( echo "$gpsdata" | jsawk 'return this.lat' ) lon=$( echo "$gpsdata" | jsawk 'return this.lon' ) alt=$( echo "$gpsdata" | jsawk 'return this.alt' ) dt=$( echo "$gpsdata" | jsawk 'return this.time' ) echo "$dt" echo "Вы здесь: $lat, $lon и $alt"
Для получения более подробной информации см. форум.
Ручная настройка
Если был создан файл ~/.config/redshift.conf
, то Redshift будет использовать настройки, указанные в нем. Тем не менее, Redshift самостоятельно не создаст конфигурационный файл, так что вам нужно создать его вручную.
Пример для Витебска/Беларуси:
~/.config/redshift.conf
; Общие настройки для redshift [redshift] ; Установка дневной и ночной температур экрана ; Нейтральная температура цвета - 6500K. Использование этой величины ; не изменит температуру цвета дисплея. Установка температуры цвета ; больше этого значения приведет к более синему цвету экрана, ; установка меньшего значения - к более красному оттенку. ; Значения по умолчанию: ; Температура цвета днем: 5500K ; Температура цвета ночью: 3500K temp-day=6500 temp-night=3500 ; Включение/выключение плавного перехода между днём и ночью ; 0 сразу установит соответствующее значение температуры экрана по приходе дня и ночи. ; 1 будет постепенно изменять цветовую температуру экрана transition=1 ; Установка яркости дисплея. По умолчанию 1.0 ;brightness=0.9 ; Начиная с версии 1.8 возможно использовать различные значения для дня и ночи. brightness-day=0.8 brightness-night=0.7 ; Установка гаммы экрана для (всех цветов, или каждого цветового канала в отдельности) gamma=0.8 ;gamma=0.8:0.7:0.8 ; Установка источника местоположения: 'geoclue', 'gnome-clock', 'manual' ; наберите 'redshift -l list' чтобы увидеть возможные значения ; Их настройка производится в секции ниже location-provider=manual ; Установка метода регулировки: 'randr', 'vidmode' ; наберите 'redshift -m list' чтобы увидеть все возможные значения ; 'randr' является предпочтительным методом, 'vidmode' на устаревшем API ; но работает в некоторых случаях, когда 'randr' отказывается. ; Их настройка производится в секции ниже. adjustment-method=randr ; Конфигурация источников местоположения: ; наберите 'redshift -l ИСТОЧНИК:help' чтобы увидеть настройки ; напр.: 'redshift -l manual:help' [manual] lat=55.11 lon=30.1 ; Конфигурация метода регулировки ; наберите 'redshift -m METHOD:help' чтобы увидеть настройки ; напр.: 'redshift -m randr:help' ; В этом примере, randr сконфигурирован для регулировки экрана 0 ; Обратите внимание, что нумерация начинается с 0, так что это на самом деле это первый экран [randr] screen=0
Решение проблем
redshift-gtk не запускается
Redshift-gtk требует дополнительных зависимостей для правильной работы. Для проверки недостающих зависимостей, запустите redshift-gtk
из эмулятора терминала. Вывод будет примерно следующий:
Traceback (most recent call last): File "/usr/bin/redshift-gtk", line 26, in <module> from redshift_gtk.statusicon import run File "/usr/lib/python3.4/site-packages/redshift_gtk/statusicon.py", line 31, in <module> from gi.repository import Gtk, GLib ImportError: No module named 'gi.repository'
Чтобы решить эту проблему, установите python-gobject, python-xdg, и librsvg из официальных репозиториев.
Failed to run Redshift due to geoclue2
По умолчанию сконфигурирован geoclue2 без доступа для Redshift.
Чтобы открыть доступ, добавьте следующие строки в /etc/geoclue/geoclue.conf
/etc/geoclue/geoclue.conf
[redshift] allowed=true system=false users=