Manualinux
http://www.nvu.com http://www.gimp.org InicioPresentaciónActualizacionesManualesDescargasNoticiasAgradecimientoEnlaces

Entornos GráficosAplicaciones

Administradores de SesionesAdministradores de VentanasEscritoriosUtilidades de Escritorio

Utilidades de Escritorio - XdgmenumakerUtilidades de Escritorio - XScreenSaver

Utilidades de Escritorio - Xonclock




Utilidades de Escritorio - Xonclock




Copyright

Copyright © José Luis Lara Carrascal  2008-2023   http://manualinux.es



Sumario

Introducción
Preliminares
Instalación
Opciones de línea de comandos
Configuración
Configurar el inicio de Xonclock
Iniciamos Xonclock
Paquetes binarios
Enlaces




Introducción  

Xonclock
es un sencillo reloj analógico de escritorio con soporte de temas, que se muestra en el fondo de la pantalla. Está basado en ClocX, en cuya web nos podemos descargar más temas (los que están en formato PNG) y utilizarlos con Xonclock. Aunque su autor explica en la web que no tiene pensado publicar más versiones, he creído oportuno añadir su instalación y configuración a la documentación de la web, quizá cambie de idea en un futuro próximo o, el proyecto sea retomado por otro programador.



Preliminares  

1) Comprobar que la ruta de instalación de los binarios del programa la tenemos en nuestro PATH


Abrimos una ventana de terminal y ejecutamos el siguiente comando:

[jose@Fedora-18 ~]$ echo $PATH
/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/jose/bin

Si no aparece entre las rutas mostradas el directorio /usr/local/bin, abrimos un editor de texto y añadimos lo siguiente:

#!/bin/sh

export PATH=/usr/local/bin:$PATH

Lo guardamos con el nombre variables.sh, y lo instalamos en /etc/profile.d.

$ su -c "install -m755 variables.sh /etc/profile.d"

Tenemos que cerrar el emulador de terminal y volverlo a abrir para que la variable de entorno aplicada sea efectiva. Es conveniente guardar una copia de este script para posteriores instalaciones de nuestro sistema, teniendo en cuenta que es el que se va a utilizar a partir de ahora en todos los manuales de esta web, para establecer variables de entorno globales, excepto en aquellas que sólo afectan al usuario, en las que se utilizará el archivo de configuración personal, ~/.bashrc.

La ventaja de utilizar el directorio /etc/profile.d es que es común a todas las distribuciones y nos evita tener que editar otros archivos del sistema como por ejemplo, /etc/profile.

2) Desinstalar versiones anteriores del programa ubicadas en el directorio /usr

Aún en el caso de que la versión a compilar la vayamos a instalar en el mismo directorio que la que proporciona la distribución, siempre se debe desinstalar previamente la versión antigua, para evitar conflictos innecesarios.



Instalación  

Dependencias

Herramientas de Compilación


Entre paréntesis la versión con la que se ha compilado Xonclock para la elaboración de este documento.

* GCC - (13.2.0) o Clang - (16.0.6)
* Gawk - (5.2.2)
* Make - (4.4.1)
* Automake - (1.16.5)
* Autoconf - (2.71)

Librerías de Desarrollo

* Xorg - (7.7 / xorg-server 21.1.8)
   LibICE - (1.1.1)
   LibX11 - (1.8.6)
   LibXext - (1.3.5)
   LibXft - (2.3.8)
   LibXrender - (0.9.11)
   LibXpm - (3.5.16)
* Freetype2 - (2.13.1)
* Libjpeg-turbo - (3.0.0)
* Libpng - (1.6.40)
* LibTIFF - (4.5.1)



Descarga del programa y temas adicionales

xonclock-0.0.9.4.tar.gz  |  png_ae.zip  |  png_fz.zip

Optimizaciones

$ export {C,CXX}FLAGS='-O3 -march=znver3 -mtune=znver3'

Donde pone znver3 se indica el procesador respectivo de cada sistema seleccionándolo de la siguiente tabla:
Nota informativa sobre las optimizaciones para GCC
* La opción '-march=' establece el procesador mínimo con el que funcionará el programa compilado, la opción '-mtune=' el procesador específico para el que será optimizado. 

* Los valores separados por comas, son equivalentes, es decir, que lo mismo da poner '-march=k8' que '-march=athlon64'.

* En versiones de GCC 3.2 e inferiores se utiliza la opción '-mcpu=' en lugar de '-mtune='.
Nota informativa sobre las optimizaciones para Clang
* La opción '-mtune=' está soportada a partir de la versión 3.4 de Clang.

* Los valores de color azul no son compatibles con Clang.

* Las filas con el fondo de color amarillo son valores exclusivos de Clang y, por lo tanto, no son aplicables con GCC.
Valores CPU
Genéricos
Intel
AMD

Optimizaciones adicionales

Optimizaciones adicionales
GCC
Graphite
$ export {C,CXX}FLAGS+=' -ftree-loop-linear -floop-strip-mine -floop-block'
IPA
$ export {C,CXX}FLAGS+=' -fipa-pta'
LTO
$ export {C,CXX}FLAGS+=' -fuse-linker-plugin -flto=auto'
En versiones inferiores a GCC 10, sustituir auto por el número de núcleos que tenga nuestro procesador. Si sólo tiene uno, utilizar el parámetro -flto
Clang
LTO
$ export {C,CXX}FLAGS+=' -flto'
ThinLTO
$ export {C,CXX}FLAGS+=' -flto=thin'
La aplicación de esta optimización es alternativa a la tradicional LTO, a partir de Clang 3.9 y, por lo tanto, no es combinable con la misma.

Parámetros adicionales

Establecer la ruta de búsqueda de las cabeceras de Freetype
$ export CPPFLAGS+=" -I/usr/include/freetype2"

Establecer la ruta de búsqueda de directorios de librerías en sistemas de 64 bits multiarquitectura
$ export LDFLAGS+=" -L/usr/lib64 -L/usr/local/lib64 -L/opt/gcc13/lib64"
Cada usuario tendrá que establecer la ruta de búsqueda de directorios, en función de la distribución que utilice.

Establecer la ruta de búsqueda de librerías dependientes del paquete
$ export LDFLAGS+=" -lXrender -lm"

Establecer el uso de enlazador dinámico para Mold
$ export LDFLAGS+=' -fuse-ld=mold'

Establecer el uso de enlazador dinámico para LLD
Clang
$ export LDFLAGS+=' -fuse-ld=lld'
Optimizaciones complementarias LTO/ThinLTO de LLD
$ export LDFLAGS+=' -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt'
Optimizaciones complementarias LTO de LLD
$ export LDFLAGS+=" -Wl,--lto-partitions=$(nproc)"
Optimizaciones complementarias ThinLTO de LLD
$ export LDFLAGS+=" -Wl,--thinlto-jobs=$(nproc)"

Establecer la variable de entorno de uso de compilador para Clang
$ export CC=clang CXX=clang++

Extracción y Configuración  Bloc de Notas Información general sobre el uso de los comandos

$ tar zxvf xonclock-0.0.9.4.tar.gz
$ cd xonclock-0.0.9.4
$ ./configure

Compilación

$ make

Parámetros de compilación opcionales

-j$(nproc) : Establece el número de procesos de compilación en paralelo, en función del número de núcleos e hilos que tenga nuestro procesador, tomando como referencia la información mostrada por el sistema con el comando correspondiente. Si nuestro procesador es mononúcleo de un solo hilo, no añadir esta opción.

Instalación como root

$ su
# make install-strip
# cd ..
# unzip png_ae.zip -x *.ini -d /usr/local/share/xonclock/skins
# unzip -j png_fz.zip -x *.ini *.INI *.bmp roman/* -d /usr/local/share/xonclock/skins

Instalación del archivo de configuración de ejemplo en nuestro home 

$ cp /usr/local/share/xonclock/docs/xonclockrc-example ~/.xonclockrc

Estadísticas de Compilación e Instalación de Xonclock

Estadísticas de Compilación e Instalación de Xonclock
CPU AMD Ryzen 5 5500
MHz 3593.250 (BoostMax=4457.000)
RAM 32 GB
Sistema de archivos XFS
Versión del Kernel 6.4.7-ml SMP PREEMPT_DYNAMIC x86_64
Modo de frecuencia de la CPU powersave (balance performance)
Versión de Glibc 2.37
Enlazador dinámico LLD 16.0.6
Compilador Clang 16.0.6
Parámetros de optimización -03 -march=znver3 -mtune=znver3 -flto=thin -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt
Parámetros de compilación -j12
Tiempo de compilación > 1"
Archivos instalados 103
Mostrar/Ocultar la lista de archivos instalados
Ocupación de espacio en disco 3,2 MB

Consumo inicial de CPU y RAM de Xonclock

Consumo inicial de CPU y RAM de Xonclock
Programa
CPU RAM
xonclock 0 % 2,7 MB
Para medir el consumo de CPU se utiliza el programa top, y para medir el consumo de RAM se utiliza el script de Python, ps_mem.py, creado por Pádraig Brady, que podemos encontrar en este enlace.

Archivo de configuración personal

~/.xonclockrc Es el archivo de configuración personal de Xonclock en nuestro home.

Desinstalación como root

1) MODO TRADICIONAL

En el directorio de compilación ejecutamos el siguiente comando:

$ su -c "make uninstall"

2) MODO MANUALINUX

El principal inconveniente del comando anterior es que tenemos que tener el directorio de compilación en nuestro sistema para poder desinstalar el programa. En algunos casos esto supone muchos megas de espacio en disco. Con el paquete de scripts que pongo a continuación logramos evitar el único inconveniente que tiene la compilación de programas, y es el tema de la desinstalación de los mismos sin la necesidad de tener obligatoriamente una copia de las fuentes compiladas.

xonclock-0.0.9.4-scripts.tar.gz

$ su
# tar zxvf xonclock-0.0.9.4-scripts.tar.gz
# cd xonclock-0.0.9.4-scripts
# ./Desinstalar_xonclock-0.0.9.4

Copia de Seguridad como root

Con este otro script creamos una copia de seguridad de los binarios compilados, recreando la estructura de directorios de los mismos en un directorio de copias de seguridad (copibin) que se crea en el directorio /var. Cuando se haya creado el paquete comprimido de los binarios podemos copiarlo como usuario a nuestro home y borrar el que ha creado el script de respaldo, teniendo en cuenta que si queremos volver a restaurar la copia, tendremos que volver a copiarlo al lugar donde se ha creado.

$ su
# tar zxvf xonclock-0.0.9.4-scripts.tar.gz
# cd xonclock-0.0.9.4-scripts
# ./Respaldar_xonclock-0.0.9.4

Restaurar la Copia de Seguridad como root

Y con este otro script (que se copia de forma automática cuando creamos la copia de respaldo del programa) restauramos la copia de seguridad como root cuando resulte necesario.

$ su
# cd /var/copibin/restaurar_copias
# ./Restaurar_xonclock-0.0.9.4



Opciones de línea de comandos de Xonclock  

Para que el programa nos muestre las opciones de ejecución, tenemos que ejecutar man xonclock, ya que curiosamente el programa no las muestra en la línea de comandos, lo habitual en la mayoría de programas. A continuación pongo las opciones de línea de comandos del programa traducidas al español.

       --skin=ARCHIVO
              Esta opción define que archivo será usado como tema del reloj. 
              Xonclock puede utilizar archivos PNG, JPEG, TIFF y XPM. Por
              defecto cargará el tema interno.


       --position=POSICIÓN
              Esta opción define la posición del reloj en la pantalla. Y puede ser:
              TOP-LEFT (Arriba a la izquierda), TOP-CENTER (Arriba en el centro),
              TOP-RIGHT (Arriba a la derecha), MIDDLE-LEFT (En el medio a la izquierda), 
              MIDDLE-CENTER (En el medio centrado), MIDDLE-RIGHT (En el medio a la derecha),  
              BOTTOM-LEFT (Abajo a la izquierda), BOTTOM-CENTER (Abajo en el centro), 
              BOTTOM-RIGHT (Abajo a la derecha). Por defecto es BOTTOM-RIGHT

       --offset-v=DESPLAZAMIENTO VERTICAL
              Esta opción define el desplazamiento vertical del reloj respecto a su posición 
              en la pantalla. Un valor positivo lo desciende y uno negativo lo eleva.
              Por defecto: 0

       --offset-h=DESPLAZAMIENTO HORIZONTAL
              Esta opción define el desplazamiento horizontal del reloj respecto a su posición 
              en la pantalla. Un valor positivo lo desplaza a la derecha y uno negativo a la
              izquierda. Por defecto: 0

       --hour-length=LONGITUD DE LA MANECILLA DE LA HORA
              Esta opción define la longitud de la manecilla de la hora del reloj. El valor
              tiene que ser positivo. Por defecto: automático

       --hour-width=ANCHURA DE LA MANECILLA DE LA HORA
              Esta opción define la anchura de la manecilla de la hora del reloj. El valor
              tiene que ser positivo. Por defecto: 4

       --minute-length=LONGITUD DE LA MANECILLA DE LOS MINUTOS
              Esta opción define la longitud de la manecilla de los minutos del reloj. El valor
              tiene que ser positivo. Por defecto: automático

       --minute-width=ANCHURA DE LA MANECILLA DE LOS MINUTOS
              Esta opción define la anchura de la manecilla de los minutos del reloj. El valor
              tiene que ser positivo. Por defecto: 3 

       --second-length=LONGITUD DE LA MANECILLA DE LOS SEGUNDOS
              Esta opción define la longitud de la manecilla de los segundos del reloj. El valor
              tiene que ser positivo. Por defecto: automático

       --second-width=ANCHURA DE LA MANECILLA DE LOS SEGUNDOS
              Esta opción define la anchura de la manecilla de los minutos del reloj. El valor
              tiene que ser positivo. Por defecto: 1 

       --color-hour=R/G/B/A - COLORES DE LA MANECILLA DE LA HORA
              Esta opción define el color de la manecilla de la hora del reloj. Los componentes
              del color son R/G/B/A: R - rojo, G - verde, B - azul, A - alfa (opacidad).
              Cada uno de ellos debe estar entre un rango de 0 a 255. 
              Por defecto: 255/0/0/255

       --color-minute=R/G/B/A - COLORES DE LA MANECILLA DE LOS MINUTOS
              Esta opción define el color de la manecilla de los minutos del reloj. Los componentes
              del color son R/G/B/A: R - rojo, G - verde, B - azul, A - alfa (opacidad).
              Cada uno de ellos debe estar entre un rango de 0 a 255.
              Por defecto: 0/255/0/255

       --color-second=R/G/B/A - COLORES DE LA MANECILLA DE LOS SEGUNDOS
              Esta opción define el color de la manecilla de los segundos del reloj. Los componentes
              del color son R/G/B/A: R - rojo, G - verde, B - azul, A - alfa (opacidad).
              Cada uno de ellos debe estar entre un rango de 0 a 255.
              Por defecto: 0/0/255/255

       --hands-rotation-axis=X/Y
              Esta opción define las coordenadas de posición del eje de rotación de las manecillas
              del reloj respecto a la esquina izquierda superior de la ventana del reloj
              Útil para los temas del reloj que no son rectangulares.  
              Por defecto: En el centro del rectángulo del tema del reloj.                     

       --overlap=TAMAÑO
              Esta opción define la longitud de las manecillas del reloj cuando se superponen
              una encima de otra. Por defecto: 1/5 de la longitud de la manecilla de los segundos
              del reloj.


       --sleep=SEGUNDOS
              Esta opción define el tiempo de retardo del inicio del programa. Es útil
              cuando usted inicia xonclock desde su archivo ~/.xinitrc (ver página man del script startx)
              Previene los errores de conexión al servidor gráfico.
              Por defecto: 0

       --top  Establece que el reloj se muestre siempre por encima del resto de ventanas.
              Su administrador de ventanas puede ignorar esta petición e inhabilitar la opción.
              Por defecto: no     

       -s, --show-seconds
              Muestra la manecilla de los segundos. Por defecto: no

       -d, --show-date
              Muestra el texto de la fecha. Por defecto: no

       --date-font=FUENTE
              Esta opción define la fuente del texto de la fecha. Para una detallada descripción
              del formato de nombre de la fuente ver el manual de la librería fonconfig.
              Por defecto: fixed-8

       --date-color=R/G/B/A - COLORES DEL TEXTO DE LA FECHA

              Esta opción define el color del texto de la fecha. Los componentes
              del color son R/G/B/A: R - rojo, G - verde, B - azul, A - alfa (opacidad).
              Cada uno de ellos debe estar entre un rango de 0 a 255.
              Por defecto:  0/0/0/255

       --date-position=POSICIÓN DEL TEXTO EN EL RELOJ
              Esta opción define la posición del texto de la fecha en el reloj. Y puede ser:
              TOP-LEFT (Arriba a la izquierda), TOP-CENTER (Arriba en el centro),
              TOP-RIGHT (Arriba a la derecha), MIDDLE-LEFT (En el medio a la izquierda), 
              MIDDLE-CENTER (En el medio centrado), MIDDLE-RIGHT (En el medio a la derecha),  
              BOTTOM-LEFT (Abajo a la izquierda), BOTTOM-CENTER (Abajo en el centro), 
              BOTTOM-RIGHT (Abajo a la derecha). Por defecto es MIDDLE-CENTER

       --date-offset-v=DESPLAZAMIENTO VERTICAL DEL TEXTO DE LA FECHA EN EL RELOJ
              Esta opción define el desplazamiento vertical del texto de la fecha
              respecto a su posición en el reloj. Un valor positivo lo desciende y
              uno negativo lo eleva.
              Por defecto: 10

       --date-offset-h=DESPLAZAMIENTO HORIZONTAL DEL TEXTO DE LA FECHA EN EL RELOJ
              Esta opción define el desplazamiento horizontal del texto de la fecha
              respecto a su posición en el reloj. Un valor positivo lo desplaza a
              la derecha y uno negativo a la izquierda.
              Por defecto: 0

       --date-format=FORMATO DE LA FECHA
              Esta opción define el formato del texto de la fecha. Para una detallada
              descripción de este FORMATO ejecutar man strftime.
              Por defecto: %G-%m-%d (2008-09-17)

       --date-clip-format=FORMATO DE LA FECHA A COPIAR EN EL PORTAPAPELES
              Esta opción define el formato del texto de la fecha para ser copiado en el 
              portapapeles de X. Tener en cuenta que el programa se ha probado con KDE 3.4.1
              (KWrite, KEdit), puede que en otros sistemas no funcione. No tiene soporte
              multilenguaje. El texto de la fecha se copiará en el portapapeles de X al hacer
              clic con el botón izquierdo del ratón sobre el reloj. Para una detallada
              descripción de este FORMATO ejecutar man strftime.
              Por defecto: %G-%m-%d
              %H:%M:%S

       --movable
              Permite mover el reloj con el botón izquierdo del ratón.
              Por defecto: no ajustado

       --use-background
              Esta opción permite a xonclock mezclar el tema del reloj con la imagen del fondo
              del escritorio, ideal para visualizar temas con canal alfa (transparencia).
              No funciona con los temas de imágenes XPM. Por defecto: no ajustado

       --remerge-sleep=MICROSEGUNDO
              Esta opción define el tiempo de retardo en MICROSEGUNDOS tras el cual,
              xonclock volverá a actualizar la ventana en la que se muestra. Indicado para
              cuando se cambia de fondo de forma periódica en una misma sesión.
              Esta opción es útil sólo si --use-background es utilizado.
              Por defecto: 5000

       --no-winredirect
              Si el programa se inicia con KDE o GNOME (y quizá también con el
              resto) el reloj puede quedar oculto. Intente añadir esta opción para
              prevenir dicha situación. Espero que esto sirva de ayuda.
              Por defecto: no

       --tz-hour=VALOR
              Esta opción permite personalizar las opciones zonales de la hora del sistema. El 
              valor de la hora obtenido de una llamada del sistema se calculará como 
              el valor de la hora del sistema + VALOR. El rango válido es [-24;24].
              Por defecto: 0

       --tz-minute=VALOR
              Esta opción permite personalizar las opciones zonales de la hora del sistema. El 
              valor del minuto obtenido de una llamada del sistema se calculará como 
              el valor del minuto del sistema + VALOR. El rango válido es [-60;60].
              Por defecto: 0

       --alpha-threshold=VALOR
              Esta opción define valor de umbral de alfa que permite afinar ligeramente un tema
              del reloj con el canal alfa. Esto funciona sólo si la opción --use-background no
              está establecida. 
              Por defecto: 0

       -v, --version
              Imprime la versión del programa y termina.

       -h, --help
              Muestra la ayuda y termina.

EVENTOS
         -   Usted puede copiar el texto de la fecha en el portapapeles de X con un simple clic
             del botón izquierdo del ratón en xonclock. Sólo funciona si xonclock ha sido
             iniciado con la opción --show-date.

         -   Usted puede salir de xonclock con un doble clic del botón derecho del ratón sobre
             el reloj.

         -   Usted puede mezclar la imagen del fondo del escritorio con el tema del reloj con un
             doble clic del botón izquierdo del ratón sobre el reloj (Sólo funciona si xonclock ha sido
             iniciado con la opción --use-background).




Archivo de configuración de Xonclock  Bloc de Notas

Las opciones de la línea de comandos las podemos fijar en su archivo de configuración, a continuación pongo el archivo de ejemplo que viene con el programa, con los comentarios traducidos al español. Todas estas opciones preconfiguradas son sobreescritas por los parámetros utilizados en la línea de comandos.

#
# --- archivo de configuración de ejemplo de xonclock ---
#
# 1) cualquier comentario empieza por el símbolo '#' 
# 2) si el valor no está después de '=' xonclock lo ignorará y utilizará
#    el valor interno por defecto
# 3) para una descripción completa del parámetro a ajustar, ejecutar man xonclock
# 4) para ajustar cualquier parámetro usar la sintaxis: "parámetro = valor"
#

#
# ruta al tema del reloj
skin =

#
# posición base del reloj:
# (TOP-LEFT | TOP-CENTER | TOP-RIGHT | MIDDLE-LEFT |
# MIDDLE-CENTER | MIDDLE-RIGHT | BOTTOM-LEFT |
# BOTTOM-CENTER | BOTTOM-RIGHT)
position = BOTTOM-RIGHT

#
# desplazamiento vertical y horizontal (píxeles)
offset-v =
offset-h =


#
# longitud y anchura de la manecilla de las horas (píxeles)
hour-length =
hour-width =


#
# longitud y anchura de la manecilla de los minutos (píxeles)
minute-length =
minute-width =


#
# longitud y anchura de la manecilla de los segundos (píxeles)
second-length =
second-width =


#
# colores de las manecillas del reloj
color-hour =                  # color en formato R/G/B/A
color-minute =                # color en formato R/G/B/A
color-second = 203/83/93/255  # color en formato R/G/B/A

#
# muestra la manecilla de los segundos
show-seconds = true

#
# cuántos segundos de retardo antes de mostrar el reloj al inicio
sleep =

#
# muestra la fecha en el reloj
show-date = true              # (true | false)

#
# parámetros del texto de la fecha
date-font =                   # nombre de fuente
date-color =                  # color en formato R/G/B/A
date-format = %d-%m-%G        # formato de la fecha
date-position =               # el mismo formato para el
                              # parámetro de posición (ver anterior)
date-offset-v =               # píxeles
date-offset-h =               # píxeles
date-clip-format = %d-%m-%G   # cómo se representa el texto de la fecha cuando
                              # se copia al portapapeles

#
# desactiva el uso del parámetro 'winredirect'
no-winredirect = false        # (true | false)

#
# dónde se ubica el eje central de las manecillas del reloj
hands-rotation-axis =         # X/Y píxeles

#
# muestra el reloj siempre por encima
top = false                   # (true | false)

#
# tamaño del solapado de las manecillas del reloj
overlap =                     # píxeles

#
# hace el reloj movible
movable = true                # (true | false)

#
# usa fondo (para los temas con canal alfa)
use-background = false        # (true | false)

#
# intervalo en microsegundos en los que volverá a refrescar
# la ventana (útil sólo si use-background = true) cuando se coloca
# otro fondo de escritorio
remerge-sleep = 5000

#
# para personalizar la zona horaria
tz-hour = 0
tz-min = 0


#
# valor del umbral del canal alfa 
alpha-threshold = 127




Configurar el inicio de Xonclock  

La posición y opciones de línea de comandos de Xonclock irán en función de las características particulares de cada entorno gráfico y del tamaño del tema a utilizar con el mismo y como es lógico, del libre albedrío de cada usuario, en teoría debería de ser compatible con todos, en la práctica puede que funcione mejor con unos que con otros, lo que pongo a continuación son ejemplos de ejecución en la mayoría de entornos gráficos cuya documentación está disponible en la web.

Por otra parte, si hacemos doble clic con el botón derecho del ratón, sobre el reloj, el programa se termina y si lo hacemos con el izquierdo, refresca la ventana transparente en la que se ejecuta Xonclock, muy útil en el caso de que al cambiar de fondo, ésta se haya quedado con restos del anterior. Si mantenemos pulsado el clic izquierdo del ratón sobre el reloj, lo podremos desplazar sobre la pantalla, siempre y cuando no editemos la entrada correspondiente del archivo de configuración de ejemplo que hemos copiado a nuestro home.

Debido al considerable espacio que puede llegar a ocupar un comando de ejecución de Xonclock, es muy recomendable crear un script de ejecución por cada entorno gráfico que tengamos pensado utilizar, en los ejemplos que pongo a continuación, cada uno de los entornos tendrá su propio script de ejecución del programa.

1) AfterStep

Creamos un script de ejecución de Xonclock, abrimos un editor de texto y añadimos lo siguiente:

#!/bin/sh

xonclock --sleep=5 --position=MIDDLE-CENTER --use-background --date-color=0/0/0/255 --date-offset-h=-2 \
--date-offset-v=35 --date-font=DejaVuSans-11 --skin=/usr/local/share/xonclock/skins/roman.png

Si tenemos pensado utilizar una imagen de fondo para cada escritorio virtual, tener en cuenta que Xonclock no actualiza la ventana transparente en la que se ejecuta, en el caso de AfterStep, por lo que se quedarán los restos del fondo anterior en la misma. Tenemos 2 opciones: una, hacer doble clic con el botón izquierdo del ratón sobre el reloj cada vez que cambiemos de escritorio, para que se actualice, y dos, no añadir la opción --use-background al comando de ejecución.

Lo guardamos como start_xonclock_afterstep, le damos permisos de ejecución y lo copiamos a cualquier directorio /bin que tengamos en nuestro PATH, en mi caso lo copio al que tengo en mi home.

$ chmod +x start_xonclock_afterstep
$ cp start_xonclock_afterstep ~/bin

Finalmente añadimos el comando de ejecución en la sección correspondiente del archivo de configuración ~/.afterstep/autoexec,  archivo que se crea de forma automática al seleccionar en el menú de AfterStepDesktop Setup >> Config Files >> AutoExec.

Function "InitFunction"
#    Module  "I"     Animate
    Function "I"    WorkspaceState
    Function "I"    WorkspaceModules
    Module  "I"    Banner
    Exec    "I"    exec "$HOME/.afterstep/non-configurable/send_postcard.sh"
    Exec    "I"    exec "/usr/local/bin/xbindkeys"
    Exec    "I"    exec "$HOME/bin/start_xonclock_afterstep"
EndFunction

2) Blackbox

Creamos un script de ejecución de Xonclock, abrimos un editor de texto y añadimos lo siguiente:

#!/bin/sh

xonclock --sleep=5 --position=TOP-CENTER --offset-v=20 --use-background --date-color=0/0/0/255 \
--date-offset-h=-2 --date-offset-v=35 --date-font=DejaVuSans-11 \
--skin=/usr/local/share/xonclock/skins/chrome-260.png

Lo guardamos como start_xonclock_blackbox, le damos permisos de ejecución y lo copiamos a cualquier directorio /bin que tengamos en nuestro PATH, en mi caso lo copio al que tengo en mi home.

$ chmod +x start_xonclock_blackbox
$ cp start_xonclock_blackbox ~/bin

Finalmente, siguiendo el método que se utiliza en el manual de Blackbox, lo añadimos al script ~/.blackbox/autostart de la siguiente forma,

#!/bin/sh

(sleep 2; bbkeys &) &
bsetbg -f ~/Fotos/40.jpg
start_xonclock_blackbox &

3) Fluxbox


Creamos un script de ejecución de Xonclock, abrimos un editor de texto y añadimos lo siguiente:

#!/bin/sh

xonclock --sleep=5 --offset-h=-35 --offset-v=-10 --use-background \
--skin=/usr/local/share/xonclock/skins/Violeta.png

Lo guardamos como start_xonclock_fluxbox, le damos permisos de ejecución y lo copiamos a cualquier directorio /bin que tengamos en nuestro PATH, en mi caso lo copio al que tengo en mi home.

$ chmod +x start_xonclock_fluxbox
$ cp start_xonclock_fluxbox ~/bin

Luego editamos la entrada del archivo de configuración de Xonclock para que no se muestre la fecha, con algunos temas no pega ni con cola.

#
# muestra la fecha en el reloj
show-date = false              # (true | false)

Finalmente añadimos el comando de ejecución en la sección correspondiente del script de inicio ~/.fluxbox/startup,

# Applications you want to run with fluxbox.
# MAKE SURE THAT APPS THAT KEEP RUNNING HAVE AN ''&'' AT THE END.
#
# unclutter -idle 2 &
# wmnd &
# wmsmixer -w &
start_xonclock_fluxbox &

4) Openbox

Creamos un script de ejecución de Xonclock, abrimos un editor de texto y añadimos lo siguiente:

#!/bin/sh

xonclock --sleep=5 --offset-h=-35 --offset-v=20 --position=TOP-RIGHT \
--use-background --date-color=0/0/0/200 --date-offset-v=15 \
--date-offset-v=15 --date-font=DejaVuSans-6 --skin=/usr/local/share/xonclock/skins/MilkClock.png

Lo guardamos como start_xonclock_openbox, le damos permisos de ejecución y lo copiamos a cualquier directorio /bin que tengamos en nuestro PATH, en mi caso lo copio al que tengo en mi home

$ chmod +x start_xonclock_openbox
$ cp start_xonclock_openbox ~/bin

Añadimos el comando de ejecución al script de inicio ~/.config/openbox/autostart, autostart.sh en versiones inferiores a la 3.5.x.

sleep 5; pypanel &
xbindkeys &
Esetroot -scale ~/Fondos/2141.jpg
start_xonclock_openbox &

Para otros administradores de ventanas, consultar sus respectivos manuales, en lo que haga referencia a la ejecución de programas al inicio de estos.



Iniciamos Xonclock  


Captura Xonclock + AfterStep - 1
Xonclock + AfterStep


Captura Xonclock + Blackbox
Xonclock + Blackbox


Captura Xonclock + Fluxbox
Xonclock + Fluxbox


Captura Xonclock + Openbox
Xonclock + Openbox




Enlaces  


http://xonclock.sourceforge.net >> La web de Xonclock.

http://www.clocx.net >> La web de ClocX, el programa de Windows.


Foro Galería Blog


Actualizado el 31-07-2023

Utilidades de Escritorio - Xonclock

Utilidades de Escritorio - XdgmenumakerUtilidades de Escritorio - XScreenSaver