Ответы:
Существует известная ошибка # 868904, из-за которой Redshift не запускается автоматически в 11.10 из-за конфликтов геоклика при запуске.
См. Комментарий № 17 к сообщению об ошибке для возможного решения постоянной установки местоположения при запуске.
1) Используйте http://itouchmap.com/latlong.html или любой другой сервис, чтобы найти широту / долготу
2) Настройте команду запуска красного смещения на:
gtk-redshift -l <latitude>:<longitude>
Пример широты / долготы Амстердама для красного смещения: gtk-redshift -l 52.37: 4.9
Как сообщается, он исправлен в пакете 1.7-1ubuntu2, но на домашней странице Launchpad для проекта перечислены только версии 1.7-0ubuntu1, созданные 35 недель назад.
Вы можете попробовать загрузить напрямую с их веб-сайта, чтобы увидеть, решит ли он проблему с более поздней версией.
Создайте файл с именем redshift.conf
in ~/.config
и добавьте в него свои координаты. Это должно выглядеть примерно так :
[redshift]
location-provider=manual
[manual]
lat=55.0
lon=12.0
redshift-gtk
v1.7 (установлен на автозапуск) на Trusty.
Я бы предложил два пути:
CRONTAB
Crontab - это программа, которая работает постоянно. У него есть список с программами и скриптами и точными датами или интервалами, которые они должны выполнить. Crontab часто используется системными администраторами для создания резервных копий и автоматизации задач.
Чтобы увидеть список с программами, вы можете набрать
crontab -l
Для редактирования типа списка
crontab -e
Добавьте эту строку в конце, чтобы загружать красное смещение при каждом запуске компьютера
@reboot export DISPLAY=:0.0 && /usr/bin/redshift -l 56.20:16.35
где 56.20: 16.35 - это LATITUDE:LONGITUTE
ваше местоположение. Сохраните и перезагрузите компьютер.
ВЫСКОЧКА
Upstart - это программа, которая, помимо прочего, при загрузке просматривает определенные папки при запуске скриптов. Таким образом, мы можем просто добавить нашу программу, чтобы она запускалась при каждом запуске. Upstart более низкого уровня, чем crontab, и вам нужны привилегии root.
Чтобы добавить красное смещение, вам просто нужно отредактировать /etc/rc.local
файл. Добавьте путь к красному смещению , преждеexit
в файле, иначе он не будет работать. Вы можете найти путь, набрав whereis redshift
. Файл должен выглядеть примерно так:
#!/bin/sh -e
pcscd
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/usr/bin/redshift
exit 0
Сохраните и перезагрузите.
syslog
что команда запускается, сообщения об ошибке нет, но процесс завершается к моменту появления экрана входа в систему. (То есть визуальный эффект запуска Redshift отсутствует, и после входа в систему я могу подтвердить, что процесс красного смещения действительно не запущен.)
Подключите компьютер к интернету и запустите gtk-redshift
в Терминале.
Выход будет:
maez@maez:~$ gtk-redshift
Trying location provider `geoclue'...
Started Geoclue provider `Geoclue Master'.
Using provider `geoclue'.
** (process:3541): WARNING **: Could not get location, 3 retries left.
According to the geoclue provider we're at: 18.98, 72.83
Using method `randr'.
Как только вы получите широту и долготу сверху, идите вперед и отредактируйте файл конфигурации автозапуска для Redshift, который находится в "~ / .config / autostart /"
maez@maez:~$ cd .config/autostart/
maez@maez:~/.config/autostart$ gedit redshift-gtk.desktop
В окне gedit добавьте «-l 18.98: 72.83» рядом с «Exec = redshift-gtk»
[Desktop Entry]
Comment=Color temperature adjustment tool
StartupNotify=true
Exec=redshift-gtk -l 18.98:72.83
Terminal=false
GenericName=Color temperature adjustment
Version=1.0
Categories=Utility;
Hidden=false
Icon=redshift
Type=Application
X-GNOME-Autostart-enabled=true
Name=Redshift
где 18,98: 72,83 Ваш LATITUDE: LONGITUTE
Сохраните этот файл и перезагрузите компьютер.
cp /usr/share/applications/redshift.desktop ~/.config/autostart/
Обходной путь Antoher ( комментарий # 53 ) должен установить geoclue-hostip
.
Несмотря на то, что в моей настройке (Ubuntu 13.04) обходной путь положения работает, я все равно предпочитаю его, потому что он позволяет точнее указывать местоположение.
Довольно старый вопрос, но для тех, кто может наткнуться на него, возможное решение может быть просто путем удаления geoclue и - если его еще нет - установки geoclue-2.0
Что-то вроде: apt remove geoclue && apt install geoclue-2.0
Выйдите из системы и войдите снова, чтобы увидеть изменения.
ps если цвета не говорят, вы можете проверить, запущено ли красное смещение с помощью ps
команды. напримерps aux | grep redshift
Еще один способ - настроить команду запуска для красного смещения с указанным вручную lon: lat наподобие:
redshift-gtk -l xx:yy
где хх - широта, уу - долгота
Экран запуска приложения:
Проверено на Ubuntu 14.04LTS
Создайте файл ~/.xprofile
со следующим содержанием:
#!/bin/sh
sleep 10 && redshift -PO 4200 &
Xprofile выполняется в начале сеанса пользователя X, после того, как вы войти в графической оболочке (Unity или Gnome).
Команда redshift -PO 4200
устанавливает температуру на 4200К.
Вы можете проверить скрипт, выйдя из системы, а затем войдя в нее.
Еще один способ сделать это:
создать файл конфигурации, например /etc/redshift.conf
[redshift]
location-provider=manual
[manual]
lat=xx.xxx
lon=yy.yyy
создайте скрипт, который вызывает этот файл, например /usr/local/bin/redshift.sh
( chmod 755
потом)
redshift -c /etc/redshift.conf &
вызывайте это всякий раз, когда запускается менеджер дисплея. Для LightDM это будет файл по адресу /etc/lightdm/lightdm.conf.d/90-redshift.conf
:
[Seat:*]
display-setup-script=/usr/local/bin/redshift.sh