Antworten:
Es ist ein Fehler # 868904 bekannt , der den automatischen Start von Redshift in 11.10 aufgrund von Geoclue-Konflikten beim Start stoppt.
Eine mögliche Lösung zum dauerhaften Festlegen des Standorts beim Start finden Sie in Kommentar Nr. 17 des Fehlerberichts.
1) Verwenden Sie http://itouchmap.com/latlong.html oder einen anderen Dienst, um Ihren Breiten- / Längengrad zu ermitteln
2) Passen Sie den Startbefehl von Redshift an:
gtk-redshift -l <latitude>:<longitude>
Beispiel für den Breitengrad / Längengrad von Amsterdam für die Rotverschiebung: gtk-redshift -l 52,37: 4,9
Es ist angeblich im Paket 1.7-1ubuntu2 behoben, aber die Launchpad-Homepage für das Projekt listet nur 1.7-0ubuntu1 auf, das vor 35 Wochen erstellt wurde.
Sie können versuchen, direkt von der Website des Herstellers herunterzuladen, um festzustellen , ob das Problem mit einer späteren Version behoben ist.
Erstellen Sie eine Datei mit dem Namen redshift.conf
in ~/.config
und fügen Sie Ihre Koordinaten hinzu. Es sollte ungefähr so aussehen :
[redshift]
location-provider=manual
[manual]
lat=55.0
lon=12.0
redshift-gtk
v1.7 (auf Autostart eingestellt) auf Trusty.
Ich würde zwei Möglichkeiten vorschlagen:
CRONTAB
Crontab ist ein Programm, das ständig ausgeführt wird. Es enthält eine Liste mit Programmen und Skripten sowie den genauen Daten oder Intervallen, in denen sie ausgeführt werden sollen. Crontab wird häufig von Systemadministratoren zum Erstellen von Sicherungen und zum Automatisieren von Aufgaben verwendet.
Um die Liste mit den Programmen anzuzeigen, die Sie eingeben können
crontab -l
So bearbeiten Sie den Listentyp
crontab -e
Fügen Sie diese Zeile am Ende hinzu, um Redshift bei jedem Neustart des Computers zu starten
@reboot export DISPLAY=:0.0 && /usr/bin/redshift -l 56.20:16.35
Dabei ist 56.20: 16.35 der Ort, LATITUDE:LONGITUTE
an dem Sie sich befinden. Speichern und neu starten.
EMPORKÖMMLING
Upstart ist ein Programm, das beim Booten unter anderem in bestimmten Ordnern nach auszuführenden Skripten sucht. Wir können also einfach unser Programm hinzufügen, damit es in jedem Booutup ausgeführt wird. Upstart ist einfacher als Crontab und Sie benötigen Root-Rechte.
Um Rotverschiebung hinzuzufügen, müssen Sie einfach die /etc/rc.local
Datei bearbeiten . Fügen Sie den Pfad zur Rotverschiebung vor dem exit
in der Datei ein, sonst wird sie nicht ausgeführt. Sie können den Pfad finden, indem Sie Folgendes eingeben whereis redshift
. Die Datei sollte ungefähr so aussehen:
#!/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
Speichern und neu starten.
syslog
dass der Befehl ausgeführt wird, es keine Fehlermeldung gibt, aber der Prozess zum Zeitpunkt des Starts des Anmeldebildschirms beendet ist. (Das heißt, es gibt keinen visuellen Effekt, wenn Redshift ausgeführt wird, und nach der Anmeldung kann ich bestätigen, dass tatsächlich kein Redshift-Prozess ausgeführt wird.)
:0
und manchmal :0.0
für mich gültig ist. Wie kann ich also einen Wert fest codieren ?
Verbinden Sie Ihren Computer mit dem Internet und führen Sie ihn gtk-redshift
im Terminal aus.
Die Ausgabe wird sein:
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'.
Sobald Sie Ihren Breiten- und Längengrad von oben erhalten haben, können Sie die Autostart-Konfigurationsdatei für Redshift bearbeiten. Diese finden Sie in "~ / .config / autostart /".
maez@maez:~$ cd .config/autostart/
maez@maez:~/.config/autostart$ gedit redshift-gtk.desktop
Im gedit Fenster füge "-l 18.98: 72.83" neben "Exec = redshift-gtk" ein
[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
wo 18,98: 72,83 ist Ihr LATITUDE: Longitute
Speichern Sie diese Datei und starten Sie neu.
cp /usr/share/applications/redshift.desktop ~/.config/autostart/
Eine weitere Problemumgehung ( Kommentar 53 ) ist die Installation geoclue-hostip
.
Obwohl auf meinem Setup (Ubuntu 13.04) die manuelle Positionsumgehung funktioniert und ich sie trotzdem bevorzuge, weil ich damit den Ort genauer angeben kann.
Eine alte Frage, aber für diejenigen, die vielleicht darauf stoßen , könnte eine mögliche Lösung einfach darin bestehen , Geoclue zu entfernen und - falls es noch nicht existiert - Geoclue-2.0 zu installieren
So etwas wie: apt remove geoclue && apt install geoclue-2.0
Melden Sie sich ab und wieder an, um die Änderungen zu sehen.
ps Wenn die Farben nicht aussagen, können Sie mit dem ps
Befehl überprüfen, ob die Rotverschiebung ausgeführt wird . z.Bps aux | grep redshift
Eine andere Möglichkeit besteht darin, den Startbefehl für Redshift mit manuell angegebenem lon: lat wie folgt einzurichten:
redshift-gtk -l xx:yy
wo xx - Breite, yy - Länge
Startbildschirm der Anwendung:
Getestet auf Ubuntu 14.04LTS
Erstellen Sie die Datei ~/.xprofile
mit folgendem Inhalt:
#!/bin/sh
sleep 10 && redshift -PO 4200 &
Das xprofile wird zu Beginn der X-Benutzersitzung ausgeführt, nachdem Sie sich bei der grafischen Shell (Unity oder Gnome) angemeldet haben .
Der Befehl redshift -PO 4200
setzt die Temperatur auf 4200K.
Sie können das Skript testen, indem Sie sich abmelden und dann anmelden.
Ein anderer Weg, es zu tun:
Erstellen Sie eine Konfigurationsdatei, z /etc/redshift.conf
[redshift]
location-provider=manual
[manual]
lat=xx.xxx
lon=yy.yyy
erstelle ein Skript, das diese Datei aufruft, zB /usr/local/bin/redshift.sh
( chmod 755
danach)
redshift -c /etc/redshift.conf &
Rufen Sie dies immer dann auf, wenn der Display-Manager gestartet wird. Für LightDM wäre dies eine Datei unter /etc/lightdm/lightdm.conf.d/90-redshift.conf
:
[Seat:*]
display-setup-script=/usr/local/bin/redshift.sh