sábado, 3 de agosto de 2024
Conky: Monitoreo de temperadura de discos en antiX
martes, 16 de julio de 2024
Script para automatizar la limpieza con BleachBit en antiX
Script: clean_with_bleachbit.sh
BleachBit . Personalmente yo la uso con antiX. Algunas características que lo hacen interesante:
- Limpieza profunda: BleachBit es conocido como "el CCleaner para Linux" por su capacidad de limpiar profundamente los sistemas, eliminando cachés, registros, cookies, archivos temporales y más.
- Soporte para múltiples aplicaciones: Puede limpiar archivos y cachés de una amplia gama de aplicaciones, como navegadores web, suites de oficina y programas de mensajería.
- Interfaz gráfica y de línea de comandos: Ofrece una interfaz gráfica sencilla y también puede ser usado desde la línea de comandos, lo que lo hace versátil para diferentes tipos de usuarios.
- Desfragmentación y trituración de archivos: Puede desfragmentar archivos y triturar archivos para una eliminación segura.
Interface de BleachBit |
Ventajas:
- Eficiencia: Es ligero y consume pocos recursos del sistema.
- Potencia en la limpieza: Se enfoca específicamente en la limpieza y lo hace de manera efectiva.
- Flexibilidad: La opción de usarlo desde la línea de comandos lo hace adecuado para scripts y automatización . Aca les dejo un ejemplo de como podría ser incorporado a un script (este script opcionalmente luego podría ser incorporado como una tarea administrativa a través de cron).
Código
#!/bin/bash
# --------------------------------------------------------------------------------------------------------------------------------------
# File: clean_with_bleachbit.sh
# By Julio Alberto Lascano http://drcalambre.blogspot.com/
#________ _________ .__ ___.
#\______ \_______ \_ ___ \_____ | | _____ _____\_ |_________ ____
# | | \_ __ \ / \ \/\__ \ | | \__ \ / \| __ \_ __ \_/ __ \
# | ` \ | \/ \ \____/ __ \| |__/ __ \| Y Y \ \_\ \ | \/\ ___/
#/_______ /__| \______ (____ /____(____ /__|_| /___ /__| \___ >
# \/ \/ \/ \/ \/ \/ \/
# --------------------------------------------------------------------------------------------------------------------------------------
# Last modified:2024-07-14
# --------------------------------------------------------------------------------------------------------------------------------------
# Script para automatizar la limpieza con BleachBit
# Asegúrate de tener BleachBit instalado y configurado para ejecutarse desde la línea de comandos
# Configurar las opciones de limpieza de BleachBit
# Puedes encontrar la lista completa de opciones en la documentación de BleachBit o usando `bleachbit --list`
# Lista de opciones de limpieza
options=(
"apt.autoclean"
"apt.clean"
"system.cache"
"system.tmp"
"chromium.cache"
"chromium.dom"
"chromium.history"
"chromium.form_history"
"chromium.search_engines"
"chromium.sync"
"chromium.vacuum"
"firefox.cache"
"firefox.crash_reports"
"firefox.dom"
"firefox.forms"
"firefox.session_restore"
"firefox.site_preferences"
"firefox.vacuum"
"google_chrome.cache"
"google_chrome.dom"
"google_chrome.history"
"google_chrome.search_engines"
"google_chrome.vacuum"
)
# Función para ejecutar la limpieza
run_bleachbit() {
for option in "${options[@]}"; do
echo "Limpiando $option"
bleachbit --clean "$option"
done
}
# Ejecutar la función de limpieza
run_bleachbit
# Salida del script
echo "Limpieza completada con BleachBit"
Guardar el script en:
/usr/local/bin/clean_with_bleachbit.sh
chmod +x /usr/local/bin/clean_with_bleachbit.sh
Implementación con CRON
# Editar el archivo crontab para el usuario actual
(crontab -l 2>/dev/null; echo "0 2 * * * /usr/local/bin/clean_with_bleachbit.sh >> /var/log/bleachbit.log 2>&1") | crontab -
0 2 * * *: Esta parte del cronograma especifica los momentos en que se ejecutará el script.
0: El minuto en que se ejecutará la tarea (0 significa en el minuto cero de la hora especificada).
2: La hora en que se ejecutará la tarea (2 significa a las 2:00 AM).
*: Cualquier día del mes.
*: Cualquier mes.
*: Cualquier día de la semana.
Interpretación
Minuto (0): El script se ejecutará al minuto 0 de la hora especificada (es decir, al principio de la hora).
Hora (2): El script se ejecutará a las 2:00 AM.
Día del Mes (*): Se ejecutará cualquier día del mes.
Mes (*): Se ejecutará cualquier mes.
Día de la Semana (*): Se ejecutará cualquier día de la semana.
Verificación
Después de ejecutar el comando anterior, puedes verificar que la tarea cron se haya configurado correctamente utilizando el siguiente comando:
crontab -l
Implementación con ANACRON
Usar anacron en lugar de cron para tu script de limpieza con BleachBit puede ofrecer varias ventajas, especialmente si estás en un entorno donde el equipo no está encendido constantemente o en horarios específicos.
Aquí están algunas de las ventajas:- Ejecución Garantizada: anacron garantiza que las tareas programadas se ejecuten incluso si el equipo estuvo apagado durante el horario programado. En contraste, cron solo ejecuta tareas en momentos específicos y las tareas se pierden si el equipo no está encendido.
- Flexibilidad de Horarios: anacron permite definir periodos en días para la ejecución de tareas (e.g., diario, semanal, mensual) sin necesidad de especificar una hora exacta, lo que ofrece mayor flexibilidad para equipos que no están siempre encendidos.
- Fácil Configuración para Tareas Periódicas: Para tareas que necesitan ejecutarse al menos una vez al día, anacron es una opción más sencilla y robusta. En lugar de depender de un cronjob que puede no ejecutarse si el sistema está apagado, anacron simplemente ejecuta la tarea la próxima vez que el sistema esté encendido.
- Manejo Automático de Retrasos: Si una tarea se retrasa (por ejemplo, porque el equipo estuvo apagado en el momento programado para la ejecución), anacron se encargará de ejecutarla la próxima vez que el equipo esté encendido. Esto asegura que las tareas críticas no se pierdan simplemente porque el equipo no estaba disponible en el momento exacto de la programación, a diferencia de cron, que no reprograma tareas perdidas.
El COMO usar anacron con un usuario común, aunque requiere algunos pasos adicionales en comparación con cron. A continuación, una explicacíon cómo configurar anacron para un usuario común.
Instalar anacron.
Primero, asegúrate de que anacron esté instalado en tu sistema. En la mayoría de las distribuciones basadas en Debian/Ubuntu, puedes instalarlo con:.
sudo apt-get install anacron
Crear Directorios y Archivos de Configuración
anacron generalmente se configura a nivel de sistema, pero puedes configurarlo para un usuario común creando los directorios y archivos necesarios en tu directorio de inicio.
Crear Directorios:
Crea un directorio ~/.anacron para almacenar los archivos de estado de anacron:
mkdir -p ~/.anacron
Crear el Archivo de Tareas:
Crea un archivo llamado anacrontab en tu directorio de inicio:
touch ~/.anacron/anacrontab
Luego, edita este archivo con tu editor de texto preferido y añade la configuración de la tarea. Por ejemplo, para ejecutar el script de limpieza con BleachBit diariamente:
# archivo de configuración para anacron
# formato: periodo demora identificador comando
# Trabajo diario
1 5 clean_with_bleachbit /usr/local/bin/clean_with_bleachbit.sh >> /var/log/bleachbit.log 2>&1 && echo "---- $(date) ----" >> /var/log/bleachbit.log
Este ejemplo configura anacron para ejecutar el script clean_with_bleachbit.sh diariamente.
- 1: Especifica que el trabajo debe ejecutarse diariamente.
- 5 clean_with_bleachbit: Esto significa que el trabajo se ejecutará 5 minuto después de que anacron se inicie.
- /usr/local/bin/clean_with_bleachbit.sh: Es el script que se va a ejecutar.
- >> /var/log/bleachbit.log: Redirige la salida estándar (stdout) del script al archivo /var/log/bleachbit.log. El operador >> añade la salida al final del archivo sin sobrescribirlo.
- 2>&1: Redirige la salida de error estándar (stderr) al mismo lugar que la salida estándar (stdout).
Desglose de 2>&1
- 2 representa el descriptor de archivo para stderr.
- > es el operador de redirección.
- &1 significa que stderr se redirigirá al mismo lugar que stdout.
Crear un Script para Ejecutar anacron
Para asegurarte de que anacron se ejecute regularmente, incluso si el equipo se apaga, puedes crear un script que ejecute anacron cada vez que inicies sesión o se inicie el entorno de escritorio.
Crear el Script:
Crea un archivo llamado run_anacron.sh en tu directorio de inicio:
touch ~/run_anacron.sh
Luego, edita este archivo y añade lo siguiente:
#!/bin/bash
# Esperar 1 minuto para asegurar que el entorno esté listo
sleep 60
# Registro adicional para depuración
echo "Running Anacron script at $(date)" > ~/anacron_debug.log
echo "Current user: $(whoami)" >> ~/anacron_debug.log
echo "Current directory: $(pwd)" >> ~/anacron_debug.log
echo "Environment variables: $(env)" >> ~/anacron_debug.log
echo "Anacron status before execution:" >> ~/anacron_debug.log
/sbin/anacron -T -t ~/.anacron/anacrontab >> ~/anacron_debug.log 2>&1
# Ejecutar Anacron
/sbin/anacron -t ~/.anacron/anacrontab -S ~/.anacron -s
exit_code=$?
# Verificar el código de salida y registrar en el log
if [ $exit_code -eq 0 ]; then
echo "Starting Anacron at $(date)" > ~/anacron_log.log
else
echo "Anacron failed to start at $(date) with exit code $exit_code" > ~/anacron_log.log
fi
# Registrar el estado después de la ejecución
echo "Anacron status after execution:" >> ~/anacron_debug.log
/sbin/anacron -T -t ~/.anacron/anacrontab >> ~/anacron_debug.log 2>&1
Ejecutar anacron al Iniciar Sesión
Finalmente, configura tu entorno para ejecutar anacron al iniciar sesión. Puedes agregar el script run_anacron.sh a tus aplicaciones de inicio.
Para GNOME, por ejemplo:
- Abre "Aplicaciones de inicio" (Startup Applications).
- Añade una nueva entrada: Nombre: anacron
Comando: /home/tu_usuario/run_anacron.sh
Comentario: Ejecutar tareas de anacron
Además de estas variantes predefinidas, puedes definir tareas usando un formato más detallado, especificando el número de días entre ejecuciones. Aquí tienes algunos ejemplos adicionales:
Variantes de anacron
-
Especificar el Número de Días
- Puedes especificar cualquier número de días entre ejecuciones.
- Formato:
[número de días] [demora en minutos] [identificador] [comando]
- Ejemplo para ejecutar cada 3 días:
3 1 clean_with_bleachbit /usr/local/bin/clean_with_bleachbit.sh >> /var/log/bleachbit.log 2>&1
Ejemplos Adicionales
-
Ejecutar Cada 2 Días:
2 1 clean_temp_files /usr/local/bin/clean_temp_files.sh >> /var/log/clean_temp_files.log 2>&1
-
Ejecutar Cada 10 Días:
10 1 backup_data /usr/local/bin/backup_data.sh >> /var/log/backup_data.log 2>&1
Sintaxis del Archivo anacrontab
Cada línea en el archivo anacrontab
sigue esta sintaxis:
[periodo] [demora en minutos] [identificador] [comando]
- periodo: Número de días entre ejecuciones.
- demora en minutos: Tiempo de espera antes de ejecutar la tarea después de iniciar
anacron
. - identificador: Un nombre único para identificar la tarea.
- comando: El comando o script a ejecutar.
Archivo ~/.anacron/anacrontab
con Varias Tareas
# archivo de configuración para anacron
# formato: periodo demora identificador comando
# Trabajo diario
1 5 clean_with_bleachbit /usr/local/bin/clean_with_bleachbit.sh >> /var/log/bleachbit.log 2>&1
# Trabajo semanal
7 1 clean_logs /usr/local/bin/clean_logs.sh >> /var/log/clean_logs.log 2>&1
# Trabajo mensual
30 30 system_backup /usr/local/bin/system_backup.sh >> /var/log/system_backup.log 2>&1
# Otros trabajos
3 1 clean_temp_files /usr/local/bin/clean_temp_files.sh >> /var/log/clean_temp_files.log 2>&1
10 1 backup_data /usr/local/bin/backup_data.sh >> /var/log/backup_data.log 2>&1
Estas configuraciones permiten una gran flexibilidad en la programación de tareas periódicas, asegurando que se ejecuten incluso si el sistema no está encendido en el momento exacto programado.
jueves, 21 de septiembre de 2023
conky (implementando perl para las fases lunares)
#!/usr/bin/perl -w
#to install, with sudo
#perl -MCPAN -e 'install Astro::MoonPhase'
# -------------------------------------------------------------------
# File: moon.pl /\
# Type: Perl Script /_.\
# By Fernando Gilli fernandowekers(dot)org _,.-'/ `",\'-.,_
# Last modified:2023-09-21 -~^ /______\`~~-^~:
# ------------------------
# Get Moon data from perl module Astro::MoonPhase
# / OS : $Linux, $FreeBSD (X Window)
# -------------------------------------------------------------------
use warnings;
use strict;
use POSIX qw(strftime);
use Astro::MoonPhase;
my @phases = phasehunt();
#print "New Moon = ", scalar(localtime($phases[0])), "\n";
#print "First quarter = ", scalar(localtime($phases[1])), "\n";
#print "Full moon = ", scalar(localtime($phases[2])), "\n";
#print "Last quarter = ", scalar(localtime($phases[3])), "\n";
#print "New Moon = ", scalar(localtime($phases[4])), "\n";
open(my $fh, '>', 'moon_phase_die');
print $fh "Full Moon\n";
print $fh ucfirst strftime("%b %d", localtime($phases[2])), "\n";
print $fh "New Moon\n";
print $fh ucfirst strftime("%b %d", localtime($phases[4])), "\n";
close $fh;
viernes, 13 de enero de 2023
Laptop Dell Inspiron 3501 con 4GB de RAM extremadamente lenta con Windows 10 - (análisis y solución)
Voy a describir mi caso:
Recientemente mi esposa compró una Dell Inspiron 3501 con 4GB de RAM con Windows 10 con un 1 (un) terabyte de capacidad en disco .
Me fue imposible (literalmente) hacer que esta computadora funcione con Windows 10.
Investigando un poco en la asistencia que ofrece Dell en su sitio oficial, vi que no era el único que estaba teniendo problema con estas especificaciones de hardware:
https://www.dell.com/community/Inspiron/Dell-Inspiron-15-3000-extreme-slow/td-p/8184819
Buscando un poco en Youtube encontré un buen tutorial con el manejo de la BIOS de las computadoras Dell
(Una instalación limpia de Linux Mint 21 / BIOS Dell UEFI con arranque seguro y MOK)
domingo, 18 de septiembre de 2022
Conky y una implementación de Mapa mundial de luz solar
Cómo funciona:
Observe
cómo sale y se pone el sol en todo el mundo en esta ilustración en
tiempo real generada por computadora de los patrones de luz solar y
oscuridad de la Tierra. Las nubes se actualizan diariamente con imágenes satelitales meteorológicas actuales.
Comienza con imágenes sin nubes de la tierra durante el día (de un par de satélites de la NASA) y la noche (de un programa del Departamento de Defensa para mapear las luces de la ciudad). Todos los días, descarga una imagen de nubes compuestas basada en datos de satélites meteorológicos de todo el mundo. Y cada media hora, estas imágenes son compuestas y mapeadas en una esfera por xplanet según la posición relativa del sol. Los mapas planos son procesados posteriormente por ImageMagick para cortar los 15 grados más cercanos a los polos norte y sur donde los datos de nubes no están disponibles.
He realizado una nueva implementación para una versión anterior de conky en la que ya estaba trabajando con datos del clima y una API de Open Weather Map.
Para ello agregué el siguiente sript (en bash) para poder descargar el mapa mundial de luz solar desde el sitio die.net y adecuarlo con los datos meteorológicos que ya tengo:
#!/bin/bash
# -------------------------------------------------------------------
# File: GetWorldSunlightMap.sh
# By Julio Alberto Lascano http://drcalambre.blogspot.com/
#________ _________ .__ ___.
#\______ \_______ \_ ___ \_____ | | _____ _____\_ |_________ ____
# | | \_ __ \ / \ \/\__ \ | | \__ \ / \| __ \_ __ \_/ __ \
# | ` \ | \/ \ \____/ __ \| |__/ __ \| Y Y \ \_\ \ | \/\ ___/
#/_______ /__| \______ (____ /____(____ /__|_| /___ /__| \___ >
# \/ \/ \/ \/ \/ \/ \/
# -------------------------------------------------------------------
# Get World Sun light Map from https://www.die.net/earth/
# Watch the sun rise and set all over the world on this real-time,
# computer-generated illustration of the earth's patterns of sunlight
# and darkness.
# The clouds are updated daily with current weather satellite imagery.
# -------------------------------------------------------------------
# Last modified:2022-09-15
# -------------------------------------------------------------------
# Working directory
DirShell="$HOME/.cache"
# World Sun light Map image
# Can't download direct with wget
# To get World Sun light Map image -> Pass Cloudflare DDOS Protection
curl https://static.die.net/earth/mercator/280.jpg --output "${DirShell}"/world_sunlight_map.jpg \
-H 'Host: static.die.net' \
-H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
-H 'Accept-Language: en-US,en;q=0.5' \
-H 'Referer: https://static.die.net/moon' \
-H 'Connection: keep-alive' --compressed
#EOF
Y en el archivo conky.conf e adicionado la siguiente sección para poder mostrarla y actualizarla con una frecuencia de cada 15 minutos (900 intervalos de 1 segundo que efectúa conky). Lo que nos brinda una vista, no solo de luz solar, sino también de las nubosidades sobre los continentes que son reales:
# --- World Sunlight Map --- #
${execi 900 bash ~/.config/conky/scripts/GetWorldSunlightMap.sh}
${image ~/.cache/world_sunlight_map.jpg -p 0,840 -s 254x142 -n}
Así es como se vería
Esta actualización para conky puede ser descargada desde acá
jueves, 15 de septiembre de 2022
conky con: API openWeatherMap mas una brújula para indicar la dirección del viento y la luna observada desde la Patagonia Argentina
El fondo de escritorio es una fotografía de un atardecer en una de mis salidas en bicicleta por la costanera de Rio Gallegos (Argentina)
descargue los archivos de configuración desde acá
el contenido del archivo open-weather-map-wather-conky-master.zip descargado es el que se muestra a continuación:
Para utilizar esta configuración de conky, hay que registrarse en OpenWeatherMap haciendo clic acá lo que le generará su propia API-KEY
Dentro de la carpeta scripts se encuentran los siguientes archivos. Uno de ellos tendrá que ser modificado por usted con su propia API-KEY de OpenWeatherMap luego de su registración.
#!/bin/bash
# -------------------------------------------------------------------
# File: openWeatherMap-weather.sh
# Type: Bash Shell Script
# By Julio Alberto Lascano http://drcalambre.blogspot.com/
#________ _________ .__ ___.
#\______ \_______ \_ ___ \_____ | | _____ _____\_ |_________ ____
# | | \_ __ \ / \ \/\__ \ | | \__ \ / \| __ \_ __ \_/ __ \
# | ` \ | \/ \ \____/ __ \| |__/ __ \| Y Y \ \_\ \ | \/\ ___/
#/_______ /__| \______ (____ /____(____ /__|_| /___ /__| \___ >
# \/ \/ \/ \/ \/ \/ \/
#
# Last modified:2022-09-15
# -------------------------------------------------------------------
# RGL : Rio Gallegos city, Argentina lat= -51.6226&lon=-69.2181
# To get information in JSON format: https://openweathermap.org/current#current_JSON
# For help: https://openweathermap.org/current#parameter
# -------------------------------------------------------------------
# 5 day weather forecast: https://openweathermap.org/forecast5
# You can search weather forecast for 5 days with data every 3 hours by geographic coordinates.
# All weather data can be obtained in JSON and XML formats.
# [cnt] optional A number of days, which will be returned in the API response (from 1 to 16)
# Example of API call: http://api.openweathermap.org/data/2.5/forecast/daily?q=London&cnt=3&appid={API key}
# -------------------------------------------------------------------
# API call
# api.openweathermap.org/data/2.5/forecast?lat={lat}&lon={lon}&appid={API key}
# https://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&appid={API key}
# -------------------------------------------------------------------
# Current Weather
urlweather="https://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&appid={API key}&units=metric&lang=es"
# Extended forecast Weather
urlforecast="api.openweathermap.org/data/2.5/forecast?lat={lat}&lon={lon}&cnt=3&appid={API key}&units=metric&lang=es"
curl ${urlweather} -s -o ~/.cache/openweathermap.json
curl ${urlforecast} -s -o ~/.cache/openweathermap-forecast.json
El otro archivo que tendría que ser modificado por usted seria el que recaba los datos de las fases lunares. Yo para esta implementación he obtenido un muy buen script en bash GetMoon.sh que programo Fernando Gilli fernando<at>wekers(dot)org (mis respetos a él por el buen trabajo que hizo).
Yo hice mi propia implementación de la manera que se muestra a continuación (usted es libre de adecuarlo al hemisferio en que vive para mostrar de manera correcta las fases lunares)
#!/bin/bash
# -------------------------------------------------------------------
# File: GetMoon.sh /\
# Type: Bash Shell Script /_.\
# By Fernando Gilli fernandowekers(dot)org _,.-'/ `",\'-.,_
# ------------------------ -~^ /______\`~~-^~:
# Get Moon data from moongiant.com
# / OS : $Linux, $FreeBSD (X Window)
# ------------------------
# adapted for the current version by:
#________ _________ .__ ___.
#\______ \_______ \_ ___ \_____ | | _____ _____\_ |_________ ____
# | | \_ __ \ / \ \/\__ \ | | \__ \ / \| __ \_ __ \_/ __ \
# | ` \ | \/ \ \____/ __ \| |__/ __ \| Y Y \ \_\ \ | \/\ ___/
#/_______ /__| \______ (____ /____(____ /__|_| /___ /__| \___ >
# \/ \/ \/ \/ \/ \/ \/
# Julio Alberto Lascano http://drcalambre.blogspot.com/
# Last modified:2022-09-15
# -------------------------------------------------------------------
# Working directory
DirShell="$HOME/.cache"
# set language
lang="pt-es"
# put your hemisphere here:
# n for north
# s for south
hemisphere=s
# ****************************
wget -q -O ${DirShell}/raw "http://www.moongiant.com/phase/today" > /dev/null 2>&1
sleep 1
cp ${DirShell}/raw ${DirShell}/ico
[ -f ${DirShell}/moon_tmp.jpg ] && rm ${DirShell}/moon_tmp.jpg
[ -f ${DirShell}/moon.jpg ] && rm ${DirShell}/moon.jpg
sed -i -e '/^ *$/d' -e 's/^ *//g' ${DirShell}/raw
sed -i '/Illumination/!d' ${DirShell}/raw
sed -i 's/
/\n/g' ${DirShell}/raw
sed -i 's|<[^>]*>||g' ${DirShell}/raw
sed -i -e '4d' ${DirShell}/raw
#ico name
sed -i '/var jArray=\|"todayMoonContainer"/!d' ${DirShell}/ico
sed -i -e 's/"\]};//g' -e 's/^.*today_phase\///g' -e 's/\.jpg.*$//g' ${DirShell}/ico
cat ${DirShell}/ico >> ${DirShell}/raw
img_in=$(sed -n 4p ${DirShell}/raw)
[ -f ${DirShell}/ico ] && rm ${DirShell}/ico
now=$(date --date="now" +%H)
# Moon image
if [[ $now -ge 18 || $now -lt 06 ]]; then
# $now >=18 or $now < 06 --> day moon -> more light
wget -q --output-document=${DirShell}/moon_tmp.jpg https://www.moongiant.com/images/today_phase/$img_in.jpg > /dev/null 2>&1
else
# night moon -> dark
# Can't download direct with wget
# To get moon image -> Pass Cloudflare DDOS Protection
curl https://static.die.net/moon/210.jpg --output "${DirShell}"/moon_tmp.jpg \
-H 'Host: static.die.net' \
-H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0' \
-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
-H 'Accept-Language: en-US,en;q=0.5' \
-H 'Referer: https://static.die.net/moon' \
-H 'Connection: keep-alive' --compressed
fi
# mirror moon image, hemisphere south
case $hemisphere in
s)
convert -flop -colorspace rgb ${DirShell}/moon_tmp.jpg ${DirShell}/moon.jpg
rm ${DirShell}/moon_tmp.jpg
;;
*)
convert -colorspace rgb ${DirShell}/moon_tmp.jpg ${DirShell}/moon.jpg
rm ${DirShell}/moon_tmp.jpg
;;
esac
# Translate pt-es (moon phase name)
case $lang in
pt-es)
sed -i -e 's/New Moon/Luna Nueva/g' ${DirShell}/raw
sed -i -e 's/Full Moon/Luna Llena/g' ${DirShell}/raw
sed -i -e 's/Waxing Crescent/Luna Creciente/g' ${DirShell}/raw
sed -i -e 's/Waxing Gibbous/Luna Menguante/g' ${DirShell}/raw
sed -i -e 's/Waning Crescent/Creciente Menguante/g' ${DirShell}/raw
sed -i -e 's/Waning Gibbous/Luna Menguante/g' ${DirShell}/raw
sed -i -e 's/First Quarter/Cuarto Creciente/g' ${DirShell}/raw
sed -i -e 's/Last Quarter/Cuarto Minguante/g' ${DirShell}/raw
;;
esac
# exec too
bash ~/.config/conky/scripts/lune_die.sh > /dev/null 2>&1
#EOF
Con esto ya estaría en condiciones de volcar sus modificaciones en el lugar adecuado para que conky lea el archivo de configuración conky.conf de manera correcta:
vuelque sus archivos y carpetas en $HOME/.config/conky/
Para poder trabajar con archivos JSON es necesario instalar la utilidad jq
Con el comando jq puede transformar JSON de varias maneras, seleccionando, iterando, reduciendo y alterando documentos JSON. Yo lo utilizo desde conky.conf para ir recuperando los datos que ya se han descargado con la llamada a la API de openweathermap.
Para ello abra una terminal y como root instale jq (Command-line JSON processor)
También para realizar ciertas operaciones matemáticas, buscar palabras, patrones de palabras y reemplazarlos por otras palabras y/o patrones yo utilizo awk
Para ello desde la terminal y como root instale gawk
Para mostrar correctamente la luna en el hemisferio sur (Argentina) se hace uso de convert
Luego de ejecutar el script, este realizara una llamada a la API de openweathermap y generará por primera ves los archivos json
Con esto quedaría finalizado el instructivo y ya estaría en condiciones de correr conky desde cualquier terminal.