¿Cómo obtengo el desplazamiento al rojo para comenzar con mi computadora?

48

Lo he instalado Redshiften mi computadora y funciona bien con el comando gtk-redshift.

Sin embargo, no se iniciará automáticamente cuando se use el mismo comando en las aplicaciones de inicio.

¿Cómo lo configuro para que se inicie automáticamente?

Dandyman
fuente

Respuestas:

27

Existe un error conocido # 868904 que impide que Redshift se inicie automáticamente en 11.10 debido a conflictos de geoclue al inicio.

Consulte el Comentario n. ° 17 en el informe de errores para ver una posible solución para configurar la ubicación de forma permanente durante el inicio.

1) Use http://itouchmap.com/latlong.html o cualquier otro servicio para encontrar su latitud / longitud

2) Ajuste el comando de inicio de desplazamiento al rojo a: gtk-redshift -l <latitude>:<longitude>

Ejemplo de latitud / longitud de Amsterdam para desplazamiento al rojo: gtk-redshift -l 52.37: 4.9

Según los informes, está arreglado en el paquete 1.7-1ubuntu2, pero la página de inicio de Launchpad para el proyecto solo enumera 1.7-0ubuntu1 construido hace 35 semanas.

Puede intentar descargar directamente desde su sitio web para ver si soluciona el problema con una versión posterior.

Mark Rooney
fuente
¿comenzaría si usara el método de reloj GNOME?
Dandyman
No estoy seguro, podría intentarlo, pero los pasos descritos anteriormente aparentemente funcionan ...
Mark Rooney
Ahora lo he probado con los métodos manual y de reloj de gnomo, y tampoco comenzará
Dandyman
Bueno, si has probado el método anterior y no funciona, no tengo sugerencias. Como dije, este es un error en Redshift, por lo que es posible que tenga que esperar a que el desarrollador de Redshift lo resuelva.
Mark Rooney
Este problema también ocurre con 14.04 y su segunda opción funcionó bien para mí. Gracias.
Ébe Isaac
14

Crear un archivo llamado redshift.confen ~/.configy añadir sus coordenadas a la misma. Debería terminar luciendo así :

[redshift]
location-provider=manual
[manual]
lat=55.0
lon=12.0
George P. Burdell
fuente
Esto funcionó para mí con redshift-gtkv1.7 (configurado en inicio automático) en Trusty.
Arch Stanton
9

Sugeriría dos formas:

  1. Usando crontab
  2. Usando advenedizo

CRONTAB

Crontab es un programa que se ejecuta todo el tiempo. Tiene una lista con programas y scripts y las fechas o intervalos exactos que deben ejecutar. Los administradores del sistema utilizan mucho Crontab para realizar copias de seguridad y automatizar tareas.

Para ver la lista con los programas, puede escribir

crontab -l

Para editar el tipo de lista

crontab -e

Agregue esta línea al final, para iniciar el desplazamiento hacia el rojo cuando la computadora se inicie

@reboot export DISPLAY=:0.0 && /usr/bin/redshift -l 56.20:16.35

donde 56.20: 16.35 es el LATITUDE:LONGITUTEde su ubicación. Guardar y reiniciar.

ADVENEDIZO

Upstart es un programa que, entre otras cosas, busca en carpetas específicas durante el arranque para ejecutar los scripts. Por lo tanto, podemos agregar nuestro programa allí para que se ejecute en cada arranque. Upstart es más de bajo nivel que crontab y necesita privilegios de root.

Para agregar desplazamiento al rojo simplemente tiene que editar el /etc/rc.localarchivo. Añadir la ruta a corrimiento al rojo antes de la exiten el archivo o de lo contrario no se ejecutará. Puede encontrar la ruta escribiendo whereis redshift. El archivo debería ser similar a esto:

#!/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

Guardar y reiniciar.

Pithikos
fuente
En mi Ubuntu 14.04, ninguno de los enfoques funciona. En particular, con el enfoque crontab, puedo ver syslogque el comando se ejecuta, no hay ningún mensaje de error, pero el proceso desaparece cuando aparece la pantalla de inicio de sesión. (Es decir, no hay ningún efecto visual de la ejecución de Redshift, y después de iniciar sesión puedo confirmar que, de hecho, no hay ningún proceso de desplazamiento al rojo en ejecución.)
Rafael
1
Esta publicación sugiere que ambos enfoques que propone están condenados al fracaso. ¿Confirmó realmente que funcionan (en más de una configuración)? Por ejemplo, he comprobado que $ DISPLAY es a veces :0y :0.0para mí, entonces, ¿cómo puedo codificar un valor?
Rafael
Debería haber comprobado si esto realmente funciona antes de votar. Como dice el comentario de @Raphael, esto no funciona en absoluto. ¡Ahora no puedo eliminar mi voto a favor! 😒
jamadagni
2

Conecte su computadora a internet y ejecute gtk-redshiften la Terminal.

El resultado será:


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'.

Una vez que obtenga su Latitud y Longitud desde arriba, continúe y edite el archivo de configuración de inicio automático para Redshift, que se encuentra en "~ / .config / autostart /"


maez@maez:~$ cd .config/autostart/
maez@maez:~/.config/autostart$ gedit redshift-gtk.desktop

En la ventana gedit, agregue "-l 18.98: 72.83" junto a "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

donde 18.98: 72.83 es su LATITUD: LONGITUTO

Guarde este archivo y reinicie.

Sairaj Chavan
fuente
2
Uno puede simplementecp /usr/share/applications/redshift.desktop ~/.config/autostart/
Gayan Weerakutti
1

Una solución alternativa ( comentario # 53 ) es instalar geoclue-hostip.

Aunque en mi configuración (Ubuntu 13.04) la solución de posición manual funciona, y la prefiero de todos modos porque me permite indicar la ubicación con mayor precisión.

LeartS
fuente
1

Una pregunta bastante antigua, pero para aquellos que puedan tropezar con ella, una posible solución puede ser simplemente eliminar geoclue y, si aún no existe, instalar geoclue-2.0

Algo como: apt remove geoclue && apt install geoclue-2.0

Cerrar sesión y volver a iniciar sesión para ver los cambios.

ps si los colores no son indicativos, puede verificar si Redshift se está ejecutando con el pscomando. p.ejps aux | grep redshift

Galilyou
fuente
0

Otra forma es configurar el comando de inicio para el desplazamiento al rojo con lon: lat especificado manualmente como:

redshift-gtk -l xx:yy

donde xx - latitud, yy - longitud

Pantalla de inicio de la aplicación:

Probado en Ubuntu 14.04LTS

ser único
fuente
0

Cree el archivo ~/.xprofilecon el siguiente contenido:

#!/bin/sh
sleep 10 && redshift -PO 4200 &

El xprofile se ejecuta al comienzo de la sesión de usuario X, después de iniciar sesión en el shell gráfico (Unity o Gnome).

El comando redshift -PO 4200establece la temperatura en 4200K.

Puede probar el script cerrando sesión y luego iniciando sesión.

golopot
fuente
¿Por qué dormir 10 segundos?
KajMagnus
1
@KajMagnus Para que sea efectivo, el corrimiento al rojo debe ejecutarse después de que otros procesos hayan finalizado.
golopot
0

Otra forma de hacerlo:

  1. crear un archivo de configuración, por ejemplo /etc/redshift.conf

    [redshift]
    location-provider=manual
    
    [manual]
    lat=xx.xxx
    lon=yy.yyy
    
  2. crear una secuencia de comandos que llame a este archivo, por ejemplo /usr/local/bin/redshift.sh( chmod 755después)

    redshift -c  /etc/redshift.conf &
    
  3. llame a esto siempre que se inicie el administrador de pantalla. Para LightDM, este sería un archivo en /etc/lightdm/lightdm.conf.d/90-redshift.conf:

    [Seat:*]
    display-setup-script=/usr/local/bin/redshift.sh
    
serv-inc
fuente