i3wm: Ajuste dinámico de la temperatura del color de la pantalla según tu ubicación.

Una de las aplicaciones que nunca falta en mis ordenadores es redshift, ayuda a cuidar nuestros ojos ajustando de forma automática la temperatura de color de la pantalla del ordenador, en función de nuestra ubicación geográfica, si es de día o de noche.

Puedes utilizar geoclue2 para determinar nuestra situación geográfica, pero el último bug me hizo buscar otra alternativa, encontrando un script en python (whereami.py) que detectará, si se tiene acceso a Internet, la latitud y la longitud de nuestra ubicación y se guardará en el archivo en ~/.local/share/localization

redshift-01.png.

Puedes bajarte el fichero desde mi repositorio, dentro de mis dotfiles, en /bin/

wget -P ~/bin https://gitlab.com/hefistion/dotfiles/raw/master/dotfiles/bin/whereami.py

La razón para almacenar la ubicación en un archivo es poder volver a ejecutar redshift la próxima vez que inicie el ordenador, aunque no se tenga acceso a Internet, según la última ubicación detectada.

Da permisos de ejecucion al archivo descargado

chmod +x ~/bin/whereami.py

Si se ejecuta el script la primera vez sin Internet, la ubicación guardada en el archivo será incorrecta, por defecto es la ubicación de Bruselas (que se puede modificar).

Finalmente, solo nos queda configurar el administrador de ventana, en mi caso i3-wm para que inicie redshift al inicio de sesión.

exec --no-startup-id redshift-gtk -l `~/bin/whereami.py`

Podemos modificar el archivo .profile para agregar la carpeta ~/bin a nuestro PATH y así evitar poner la ruta completa, podemos utilizar esta carpeta para nuestros sripts.

# Allows you to use $HOME/bin's bash scripts anywhere.
export PATH="$PATH:$HOME/bin"
if [ ! -d "$HOME/bin" ]; then
    mkdir -p "$PATH"
fi

Si hemos modificado el archivo .profile podemos llamar a redshift de la siguiente forma

exec --no-startup-id redshift-gtk -l `whereami.py`

Referencia:

Espero que te haya gustado, pasa un buen día…