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

Entornos GráficosAplicaciones

Administradores de SesionesAdministradores de VentanasEscritoriosUtilidades de Escritorio

Utilidades de Escritorio - AdeskletsUtilidades de Escritorio - asmail

Utilidades de Escritorio - Apwal




Utilidades de Escritorio - Apwal




Copyright

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


 
Sumario

Introducción
Preliminares
Instalación
Configuración
Configurar el inicio de Apwal
Iniciamos Apwal
Paquetes binarios
Enlaces




Introducción  

Apwal 
es una utilidad de escritorio que nos proporciona un espacio transparente ocupado por iconos lanzadores de aplicaciones, que se muestra de forma temporal adherido al puntero del ratón, que podemos ejecutar a través de un atajo de teclado, en combinación con uno de los botones del ratón, o en forma de entrada en un menú o en un gestor de iconos. En algunos administradores de ventanas también existe la posibilidad de integrarlo en uno de los 3 botones del ratón, siempre y cuando no interfiera en las funciones predefinidas del administrador de ventanas, aunque esta última opción nos puede crear más de un quebradero de cabeza y queda descartada en la explicación de este manual.

Además de esto nos proporciona un completo editor gráfico para poder configurar las aplicaciones y las rutas a los iconos que deseemos utilizar de forma personalizada. La única pega del programa es que los iconos no llevan el nombre de la aplicación, así que tendremos que utilizar aquellos más familiares e identificables con sus respectivas aplicaciones. Junto al manual se publica la versión en español del programa.



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 Apwal para la elaboración de este documento.

* GCC - (13.2.0) o Clang - (16.0.6)
* Make - (4.4.1)
* Pkg-config - (0.29.2)

Librerías de Desarrollo

* Xorg - (7.7 / xorg-server 21.1.8)
* GTK+ - (2.24.33)
* Libxml2 - (2.11.5)



Descarga  

apwal-0.4.5_es-ML.tar.xz 

Firma Digital  Clave pública PGP

apwal-0.4.5_es-ML.tar.xz.asc

Verificar la firma digital del paquete

$ gpg --import manualinux.asc 
$ gpg --verify apwal-0.4.5_es-ML.tar.xz.asc apwal-0.4.5_es-ML.tar.xz

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
Polly
$ export {C,CXX}FLAGS+=' -O3 -mllvm -polly -mllvm -polly-vectorizer=stripmine'
LTO
$ export {C,CXX,LD}FLAGS+=' -flto'
ThinLTO
$ export {C,CXX,LD}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

Parámetros adicionales de eliminación de avisos en el proceso de compilación
$ export {C,CXX}FLAGS+=' -w'

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 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  Bloc de Notas Información general sobre el uso de los comandos

$ tar Jxvf apwal-0.4.5_es-ML.tar.xz
$ cd apwal-0.4.5_es-ML

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 -c "make install"

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

Estadísticas de Compilación e Instalación de Apwal
CPU AMD Ryzen 5 5500
MHz 3593.250 (BoostMax=4457.000)
RAM 32 GB
Sistema de archivos XFS
Versión del Kernel 6.4.10-ml SMP PREEMPT_DYNAMIC x86_64
Modo de frecuencia de la CPU powersave (balance performance)
Versión de Glibc 2.38
Enlazador dinámico LLD 16.0.6
Compilador Clang 16.0.6
Parámetros de optimización -03 -march=znver3 -mtune=znver3 -mllvm -polly -mllvm -polly-vectorizer=stripmine -flto=thin -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt
Parámetros de compilación -j12
Tiempo de compilación 3"
Archivos instalados 1
/usr/local/bin/apwal
Enlaces simbólicos creados 1
/usr/local/bin/apwal-editor
Ocupación de espacio en disco 156 KB

Consumo inicial de CPU y RAM de Apwal

Consumo inicial de CPU y RAM de Apwal
Programa
CPU RAM
apwal 0 % 4,3 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

~/.apwalrc.xml Es el archivo de configuración personal de Apwal 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.

apwal-0.4.5_es-ML-scripts.tar.gz

$ su
# tar zxvf apwal-0.4.5_es-ML-scripts.tar.gz
# cd apwal-0.4.5_es-ML-scripts
# ./Desinstalar_apwal-0.4.5_es-ML

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 apwal-0.4.5_es-ML-scripts.tar.gz
# cd apwal-0.4.5_es-ML-scripts
# ./Respaldar_apwal-0.4.5_es-ML

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_apwal-0.4.5_es-ML



Configuración de Apwal

La configuración del programa es completamente gráfica, desde cualquier ventana de terminal o lanzador lo iniciamos ejecutando el comando apwal o apwal-editor (el 2º es un enlace al primero). Nos aparecerá un icono suelto en la pantalla y hacemos clic con el botón derecho del ratón sobre el mismo, y el configurador gráfico será iniciado.

Captura Apwal - Editor - 1


Antes que nada nos iremos a la pestaña de Opciones de Selección de Icono para añadir más rutas a los directorios de iconos que tengamos en nuestro sistema, incluidos los personales que tengamos ubicados en el directorio ~/.icons, teniendo en cuenta que el programa no los busca de forma recursiva dentro de los subdirectorios. El tamaño predefinido es de 48x48, también podemos filtrar las extensiones que deseemos utilizar. Reseñar que el programa no soporta iconos en formato SVG.

Captura Apwal - Editor - 2


Ahora nos vamos a la pestaña Editor y hacemos clic con el botón izquierdo o derecho del ratón sobre el cuadro central donde aparece el icono de la terminal, se mostrará un icono en forma de interrogación y se activarán las cajas de texto de la parte superior. Si sabemos el comando del programa, sólo hay que introducirlo en la primera caja de texto, si el programa no lo tenemos en nuestro PATH, el texto introducido se mostrará en color rojo. Tenemos la opción de abrir el selector de archivos y buscar la ruta completa de forma manual.

Indicar que la cruz roja define la posición del puntero del ratón respecto a los iconos de las aplicaciones. Esto nos sirve de referencia para organizar los iconos en torno al puntero del ratón o dejándolo en un extremo de éstos.

Captura Apwal - Editor - 3


Finalmente, hacemos clic sobre el botón de interrogación de la caja de texto que hace referencia al icono, y nos llevará directamente a la pestaña de Selección de Icono, en la cual buscaremos el icono referente a la aplicación y le daremos al botón Aplicar, para asociarlo a la aplicación en cuestión (esto nos devolverá a la pestaña anterior).

Si introducimos, por ejemplo xfe*, en la caja de texto de filtrado por nombre de archivo, nos ahorraremos mucho tiempo en poder visualizar el icono correcto. Si no existiera del tamaño de 48x48 píxeles, activaríamos las opciones de Más pequeños que los de 48x48 píxeles, en las Opciones de Selección de Iconos y añadiríamos las rutas a los de 32x32 píxeles en el caso de que el icono de la aplicación no estuviera instalado en /usr/share/pixmaps o equivalente.

Captura Apwal - Editor - 4


Si queremos recolocar el icono en la rejilla, lo mantenemos presionado con el botón de izquierdo del ratón y lo movemos hacia el lugar de ubicación deseado. Finalmente si no deseamos añadir más aplicaciones, hacemos clic sobre el botón Aceptar, y el programa se cerrará.

Captura Apwal - Editor - 5


También se pueden crear submenús, es decir, un icono de acceso a otro grupo de iconos. Sólo tenemos que añadir una aplicación siguiendo el mismo método que he explicado antes, con la diferencia de que en la caja de texto del comando a ejecutar, escribimos lo siguiente: apwal --config .apwalrc2.xml. Volvemos a iniciar Apwal y al hacer clic sobre dicho icono, se lanzará el configurador gráfico que nos permitirá añadir aplicaciones a dicho submenú. Los cambios realizados se guardarán en el archivo de configuración ~/.apwalrc2.xml. Podemos crear tantos submenús como creamos conveniente, sólo hay que cambiar la numeración del archivo de configuración del comando a introducir.

Captura Apwal - Editor - 6


Por último, en la pestaña de Opciones de Apwal, podemos ajustar el tiempo que los iconos permanecerán visibles en la pantalla, por defecto establecido en 3 segundos.

Captura Apwal - Editor - 7




Configurar el inicio de Apwal  Bloc de Notas

Existe una opción rápida de configurar el inicio, utilizando un programa común de atajos de teclado como es XbindKeys y editando los correspondientes scripts de inicio de los administradores de ventanas para poder iniciarlo junto a éstos. Ésta es una opción orientada a ser utilizado en combinación de teclado y ratón, pero como he dicho en la introducción, las posibilidades de integración en el entorno aumentan si por ejemplo, lo combinamos con un gestor de iconos, que coloque un sólo icono en el escritorio y haciendo clic sobre el mismo se inicie Apwal con las aplicaciones que tengamos configuradas. Muy útil para aquellos usuarios que les gusta tener las aplicaciones más utilizadas a mano, y no les gusta tener el escritorio saturado de iconos.

Lo de añadirlo como una entrada del menú ya resulta un poco contraproducente, porque para eso ya tenemos el menú para lanzar las aplicaciones. Otra opción a tener en cuenta es usarlo con PyPanel o con cualquier otro panel que carezca de menú  (por ejemplo, BMPanel) y busquemos algo diferente. En el manual de myGtkMenu se explica cómo añadir éste a PyPanel, la forma de añadir Apwal es exactamente la misma, sólo hay que cambiar el ejecutable. Las posibilidades son múltiples, los resultados en eficacia y rendimiento, los tendrá que comprobar el usuario en el uso diario del programa.

El comando de ejecución de apwal lo añadimos al archivo de configuración de XbindKeys, ~/.xbindkeysrc, a partir de la línea 49, más o menos.

# specify a mouse button
"apwal"
Mod4+b:1
"claws-mail"
Mod1+s
"rox ~/"

Con esta configuración, cada vez que ejecutemos la combinación Win + Clic izquierdo del ratón, Apwal se mostrará en el lugar donde tengamos situado el puntero del ratón, con la importante ventaja, de que siempre se colocará por encima de cualquier aplicación que tengamos abierta. Si preferimos no tocar la tecla Win por un problema de alergia o riesgo de shock informático (muchos usuarios de GNU/Linux han necesitado de ingreso hospitalario al tocar el logo en cuestión), podemos utilizar la tecla Alt, modificando Mod4+b:1 por Mod1+b:1. En el caso de IceWM es recomendable no utilizar la tecla Win, ya que ésta activa el menú de inicio de IceWM. Si queremos utilizar el botón derecho del ratón cambiar b:1 por b:3.

A continuación pongo algunos ejemplos de inicio de la combinación XbindKeys+Apwal en los administradores de ventanas cuya documentación está disponible en esta web,

1) AfterStep


Añadimos el comando de ejecución en la sección correspondiente del archivo de configuración ~/.afterstep/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"
EndFunction

2) Blackbox

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

docker &
bsetbg -f ~/Fotos/40.jpg
xbindkeys &

3) Enlightenment - E16


En su manual se explica de forma detenida la forma de añadir aplicaciones al inicio, sólo tendremos que crear los scripts correspondientes de ejecución. Abrimos un editor de texto con 3 ventanas y añadimos lo siguiente a cada una:

xbindkeys_init

#!/bin/sh

sleep 2; xbindkeys &

xbindkeys_start
#!/bin/sh

killall -9 xbindkeys &> /dev/null 
sleep 2; xbindkeys &

xbindkeys_stop
#!/bin/sh

killall -9 xbindkeys &> /dev/null 

Los guardamos con los nombres que encabezan los scripts, les damos permisos de ejecución y los copiamos a los directorios correspondientes, si no existen los creamos.

$ mkdir -p ~/.e16/{Init,Start,Stop}
$ chmod +x xbindkeys_*
$ cp xbindkeys_init ~/.e16/init
$ cp xbindkeys_start ~/.e16/start
$ cp xbindkeys_stop ~/.e16/stop

4) Fluxbox


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 &
wmix &
xbindkeys &

5) IceWM


Añadimos el comando de ejecución al script de inicio ~/.icewm/startup,

#!/bin/sh

xbindkeys &
gai-bgswitcher &
bluecombo &
sleep 5 && wmix &

6) JWM


Añadimos el comando de ejecución en la sección correspondiente del archivo de configuración ~/.jwmrc, en la versión original y ~/.jwm/autostart.xml en la versión en español disponible en la web.

    <StartupCommand>
        xbindkeys &
    </StartupCommand>

7) Openbox


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

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

8) Pekwm


Añadimos el comando de ejecución en la sección correspondiente del script de inicio ~/.pekwm/start

# There's probably a few other good uses for it, too. I mainly pushed for it
# because when I was doing fluxbox's docs, people used to complain that there
# wasn't one, and I wanted to avoid that for pekwm. ;) --eyez

numlockx &
fbpanel &
#idesk &
#wmix &
hsetroot -fill /home/jose/Fotos/Natasha_Henstridge.jpg -gamma 1.5 -sharpen 1.5 -blur 1.0
xbindkeys &

9) 
Para los que inician X desde terminal con el comando startx

Para los usuarios que inician los entornos gráficos con el comando startx, pueden añadir el comando de ejecución al archivo .xinitrc que se encuentra en nuestro home si no existe lo creamos, y añadimos lo siguiente:

xbindkeys &
exec pekwm

10)
XDM

Añadimos el comando de ejecución al archivo .xsession que se encuentra en nuestro home, si no existe lo creamos, y añadimos lo siguiente:

xbindkeys &
exec pekwm

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



Iniciamos Apwal  


Captura Apwal + Enlightenment - E16
Apwal + Enlightenment - E16


Captura Apwal + IceWM
Apwal + IceWM


Captura Apwal + JWM
Apwal + JWM




Enlaces  


http://apwal.free.fr >> La web de Apwal.


Foro Galería Blog


Actualizado el 14-08-2023

Utilidades de Escritorio - Apwal

Utilidades de Escritorio - AdeskletsUtilidades de Escritorio - asmail