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

Entornos GráficosAplicaciones

Administradores de SesionesAdministradores de VentanasEscritoriosUtilidades de Escritorio

Instalar My Daily Wallpaper con WineConfiguración de Xorg - Xorgcfg

Instalar Wallpapers Bot con Wine




Instalar Wallpapers Bot con Wine




Copyright

Copyright © José Luis Lara Carrascal  2015-2016   http://manualinux.eu



Sumario

Introducción
Preliminares
Instalación
Configurar la integración del programa en nuestro sistema
Desinstalar, respaldar y restaurar la instalación del programa
Iniciamos Wallpapers Bot
Enlaces




Introducción

Wallpapers Bot, es un gestor de fondos de escritorio para Windows, de características similares a LoveWallpaperHD, con el que tendremos acceso a más de 30.000 fondos de escritorio en línea, que podremos descargarnos desde el mismo programa, con el añadido exclusivo de este manual, de poder también establecer el fondo de escritorio en la mayoría de entornos gráficos cuya documentación está disponible en esta web.

Sin llegar al nivel de calidad del programa chino, este software cumple de sobra las expectativas que un usuario de entornos gráficos pueda esperar de este tipo de programas, aunque personalmente sigo prefiriendo el otro programa.



Preliminares  

1) Comprobar que el directorio /home/usuario/bin lo 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 /home/usuario/bin, editamos el archivo de configuración personal, ~/.bashrc, si no existe lo creamos, y añadimos lo siguiente al final del mismo:

export PATH:$HOME/bin:$PATH

2) Comprobar que la variable de entorno XDG_DATA_DIRS incluye el directorio /home/usuario/.local/share

Esta variable se aplica para que los archivos desktop ubicados en un directorio específico del sistema puedan ser leídos por los menús de entornos gráficos como XFce 4, o paneles como LXPanel o Fbpanel. Para saberlo basta abrir el menú de aplicaciones en cualquiera de los programas antes comentados y comprobar que aparece la entrada correspondiente a la aplicación tratada en este manual.

En este caso particular, hay que establecerla para poder ejecutar el comando update-desktop-database, como usuario, y éste pueda extraer los tipos MIME del archivo desktop instalado en ~/.local/share/applications. En el mismo archivo, ~/.bashrc, añadimos lo que está en rojo:

export PATH:$HOME/bin:$PATH

export XDG_DATA_DIRS=/usr/share:/usr/local/share:$HOME/.local/share:$XDG_DATA_DIRS



Instalación

Dependencias


Librerías nativas de Windows

* Microsoft .Net Framework 4.0

Aplicaciones

Entre paréntesis la versión con la que se ha instalado Wallpapers Bot para la elaboración de este documento.

* Wine - (1.9.4)
* Winetricks - (19022016) [1]
* Convert (ImageMagick) - (6.9.3-4) [2]
* Feh - (2.14.1) [3]
* GNU Parallel (20160122) [4]

[1] Requerido para la instalación de Microsoft .Net Framewok 4.0.
[2] Requerido para poder crear los iconos del archivo desktop.
[3] Requerido por la mayoría de entornos gráficos configurados en el script de shell personal incluido en este manual.
[4] Requerido para poder ejecutar el script de shell personal incluido en este manual.



Descarga

wallpapersbot_setup.exe

1) Establecer el directorio de instalación del programa mediante la variable WINEPREFIX

Al utilizar un WINEPREFIX expecífico, todo el proceso de instalación debe de realizarse en una ventana de terminal. En ningún momento debemos de salirnos de la misma, hasta que no finalice dicho proceso. El directorio predefinido de instalación utilizado en este manual será /home/usuario/Programas/WallpapersBot. Abrimos una ventana de terminal, y desde la misma iniciamos el proceso de creación inicial del windows virtual y posteriormente la instalación de Wallpapers Bot. Si el directorio a crear, es un subdirectorio de un directorio inexistente, Wine no podrá crear el WINEPREFIX, tendremos que crear antes de forma manual, el directorio raíz correspondiente.

$ mkdir -p $HOME/Programas
$ export WINEPREFIX=$HOME/Programas/WallpapersBot

Para comprobar en cualquier momento del proceso de instalación que estamos utilizando el WINEPREFIX establecido, ejecutamos el siguiente comando:

$ echo $WINEPREFIX

En el momento que se establece un WINEPREFIX expecífico, al ejecutar un programa con Wine o ejecutar cualquier aplicación que forme parte del mismo, éste crea de forma automática, el directorio virtual de Windows, mostrando la siguiente ventana. En este caso ejecutaremos previamente Winecfg, para posteriormente cerrar la ventana del mismo.

$ winecfg

Captura - Wallpapers Bot - 1

Para mejorar el color predefinido que muestra que es horroroso, utilizaremos este archivo y lo importaremos con Regedit.

$ regedit keramikcolor.reg

Y posteriormente ejecutamos lo siguiente para desinstalar Mono y Gecko, y ahorrar espacio en disco, ya que su instalación no es necesaria con este programa. Los seleccionamos uno detrás de otro y hacemos clic en Eliminar y luego en Aceptar.

Tener en cuenta que cada vez que actualicemos a una nueva versión de Wine, éste volverá a instalar de nuevo, estos paquetes que hemos eliminado. Con lo que los tendremos que volver a suprimir, estableciendo previamente la correspondiente variable de entorno, y ejecutando el desinstalador de Wine.

$ wine uninstaller

Captura - Wallpapers Bot - 2


3) Instalar Microsoft .Net FrameWork 4.0 con Winetricks

Para instalar la principal dependencia del programa, ejecutamos el siguiente comando:

$ winetricks dotnet40

4) Borrar los archivos de instalación de Microsoft .Net Framework 4.0 para ahorrar espacio en disco
 
$ rm -rf $WINEPREFIX/drive_c/windows/Microsoft.NET/Framework/v4.0.30319/SetupCache/

5) Instalar Wallpapers Bot  Bloc de Notas

Los usuarios que ya tengan instalado el programa siguiendo este manual, recibirán la correspondiente notificación de actualización del mismo al iniciarlo, para posteriormente haciendo clic en el enlace correspondiente, descargar e instalar la actualización sin tener que realizar ninguna otra operación más.

Finalmente iniciamos el proceso de instalación del programa, en la misma ventana de terminal que hemos empezado todo esto.

$ wine wallpapersbot_setup.exe

A continuación, se muestra todo el proceso de instalación con las correspondientes capturas de pantalla. En la primera ventana que se nos muestre, hacemos clic en Siguiente, y continuamos con la instalación.

Captura - Wallpapers Bot - 3


Continuamos con Instalar.

Captura - Wallpapers Bot - 4


Y finalmente hacemos clic en Terminar, para que se inicie el programa, o en su lugar, desmarcamos la casilla correspondiente, para poder configurar su integración en nuestro sistema, que se explica en la sección siguiente a ésta.

Captura - Wallpapers Bot - 5




Configurar la integración del programa en nuestro sistema  Bloc de Notas

1) Crear un script de ejecución de Wallpapers Bot

Para poder lanzar el programa desde la línea de comandos, o desde lanzadores como Gmrun, crearemos un script de shell, que copiaremos a nuestro directorio bin, si no existe dicho directorio lo crearemos.

Abrimos un editor de texto y añadimos lo siguiente:

#!/bin/sh
# Copyright © Jose Luis Lara Carrascal 2015-2016 <manualinux@yahoo.es>
# <http://manualinux.freehostia.com> <http://manualinux.eu> <http://manualinux.heliohost.org>
# Este script se distribuye bajo la Licencia General GNU

WINEPREFIX=$HOME/Programas/WallpapersBot
export WINEPREFIX

grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | xargs winepath -u | tail -n1 > /tmp/wall.log

sem -j2 wine 'c:\\Program\ Files\\Wallpapers\ Bot\\wallpapers_bot.exe' ;

sleep 15; while true; do
    if ! pgrep wallpapers_bot. &>/dev/null ; then
    exit 0
    else
    if [ "$(grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | \
    xargs winepath -u | tail -n1)" != "$(cat /tmp/wall.log | xargs -d "\n")" ] ; then
    grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | xargs winepath -u | tail -n1 | \
    for i in afterstep awesome blackbox fluxbox fvwm golem icewm-session jwm openbox \
pekwm qlwm qwm sawfish weewm ; do
    if pgrep $i &>/dev/null; then
    parallel feh --bg-fill
    grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | xargs winepath -u | tail -n1 > /tmp/wall.log
    elif pgrep mate-session &>/dev/null; then
    parallel gsettings set org.mate.background picture-filename
    grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | xargs winepath -u | tail -n1 > /tmp/wall.log
    elif pgrep xfce4-session &>/dev/null; then
    if grep '"nvidia"' /etc/X11/xorg.conf; then
    parallel xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor"$(xrandr --current | \
    grep -w connected | cut -d" " -f1)"/workspace0/last-image -s
    else
    parallel xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/workspace0/last-image -s
    fi
    grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | xargs winepath -u | tail -n1 > /tmp/wall.log
    elif pgrep wmaker &>/dev/null; then
    parallel wmsetbg -a -u
    grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | xargs winepath -u | tail -n1 > /tmp/wall.log
    elif pgrep ROX-Session &>/dev/null; then
    grep C*.jpg $WINEPREFIX/user.reg | cut -d'=' -f2 | xargs winepath -u | tail -n1 > /tmp/wall.log
    rox --RPC << EOF
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope">
 <env:Body xmlns="http://rox.sourceforge.net/SOAP/ROX-Filer">
  <SetBackdrop>
   <Filename>$(cat /tmp/wall.log | xargs -d "\n")</Filename>
   <Style>Stretch</Style>
  </SetBackdrop>
 </env:Body>
</env:Envelope>
EOF
exit 0
    fi   
done
    fi
    fi
sleep 0.8
done

Lo guardamos como wallpapersbot, le damos permisos de ejecución y lo copiamos al directorio bin de nuestro home.

$ chmod +x wallpapersbot
$ mkdir -p ~/bin
$ cp wallpapersbot ~/bin

El script es compatible, en lo que concierne al establecimiendo del fondo de escritorio, con los siguientes entornos gráficos: Afterstep, Awesome, Blackbox, Fluxbox, Fvwm, Fvwm-Crystal, Golem, IceWM, JWM, Openbox, Pekwm, Qlwm, QuarkWM, Sawfish, WeeWM, MATE, XFce 4, Window Maker y ROX Desktop.

Si se quiere añadir más administradores de ventanas que sean compatibles con Feh, basta editar las primeras líneas agrupadas que están en rojo, y añadir al final de la última el nombre del ejecutable del administrador que se desee utilizar. En lugar de Feh, podemos utilizar otro setter, de los muchos que existen documentados en esta web, basta editar el comando de color azul por el comando correspondiente del setter en cuestión.

El tiempo que puede tardar en establecer la imagen como fondo de escritorio, depende del tiempo que tarde el programa en grabar la ruta en la entrada del registro de Wine, que pueden ser  de 4 a 8 segundos, o menos. No es un tiempo fijo, en algunos casos la activación de la imagen es inmediata, en otros tarda un poco más.

El script está diseñado para retardar 15 segundos, la ejecución del comando de bucle encargado de comprobar los cambios en la entrada correspondiente del registro de Wine. Sin este retardo necesario sería imposible controlar cuándo está el programa en ejecución y cuándo no lo está, para poder finalizar la ejecución del script de shell. Wallpapers Bot requiere para su ejecución que el entorno gráfico soporte bandeja de sistema, ya que el botón de cierre de la ventana no finaliza el programa, éste sigue ejecutándose en segundo plano, con el icono en la bandeja de sistema.

En administradores de ventanas como Fluxbox, tendremos que matar el programa para poder finalizarlo, ya que el mismo da problemas con la bandeja de sistema de Fluxbox.

Para que la imagen establecida se cargue en el siguiente inicio de los entornos gráficos en los que se utiliza Feh, basta leerse el manual de LoveWallpaperHD, o el del propio Feh

3) Creación del archivo wallpapersbot.desktop 

Para que Wallpapers Bot sea detectado por los menús de entornos gráficos como XFce 4 o paneles como LXPanel o Fbpanel, abrimos un editor de texto y añadimos lo siguiente:

[Desktop Entry]
Name=Wallpapers Bot
GenericName=Wallpapers Bot
Comment=Un gestor de fondos de escritorio
Exec=wallpapersbot
StartupNotify=true
Icon=wallpapersbot
Categories=Application;Utility;
Type=Application

Lo guardamos con la codificación de caracteres UTF-8, y con el nombre wallpapersbot.desktop. Luego lo copiamos como usuario a ~/.local/share/applications.

$ mkdir -p ~/.local/share/applications
$ cp wallpapersbot.desktop ~/.local/share/applications

3a) Crear los iconos del archivo wallpapersbot.desktop a partir del icono proporcionado por el programa  Información general sobre el uso de los comandos

Wine genera los iconos del archivo desktop asignándoles un prefijo de identificación diferente en cada instalación del programa, lo que hace que tengamos que crear los iconos del archivo desktop y los que vayamos a utilizar en los menús de los administradores de ventanas, a partir del icono suelto incluido en el directorio de instalación del programa, para poder hacer uso de los ejemplos aquí expuestos en el manual.

Con el siguiente comando, crearemos los iconos correspondientes en sus diferentes tamaños, que nos servirá como referente para crear el archivo desktop y las correspondientes entradas en los menús de los administradores de ventanas.

$ for i in ~/.local/share/icons/hicolor ; do \
mkdir -p $i/{16x16,24x24,32x32,48x48,64x64,128x128,256x256}/apps ; \
export WINEPREFIX=$HOME/Programas/WallpapersBot ; \
cd $WINEPREFIX/drive_c/Program\ Files/Wallpapers\ Bot/ ; \
convert icon.ico[2] $i/256x256/apps/wallpapersbot.png ; \
convert icon.ico[0] $i/128x128/apps/wallpapersbot.png ; \
convert -resize 64 icon.ico[0] $i/64x64/apps/wallpapersbot.png ; \
convert icon.ico[4] $i/48x48/apps/wallpapersbot.png ; \
convert icon.ico[3] $i/32x32/apps/wallpapapesbot.png ; \
convert -resize 24 icon.ico[4] $i/24x24/apps/wallpapersbot.png ; \
convert icon.ico[1] $i/16x16/apps/wallpapersbot.png ; \
gtk-update-icon-cache -tf $i &> /dev/null ; \
done

3b) Ejemplo de ruta al icono para añadir a los menús de los administradores de ventanas

/home/jose/.local/share/icons/hicolor/16x16/apps/wallpapersbot.png

4) Directorios de instalación y configuración del programa utilizando el formato de ruta UNIX

Directorio de instalación
~/Programas/Wallpapers Bot/drive_c/Program\ Files/Wallpapers Bot Es el directorio de instalación de Wallpapers Bot.
Directorios de configuración
~/.wine/drive_c/users/jose/Local\ Settings/Application\ Data/Wallpapers Bot Es el directorio de configuración personal del programa para el usuario jose
Directorios de datos
$HOME/Documentos/Wallpapers\ Bot Es el directorio predefinido que guarda la imagen en formato JPEG utilizada para establecer el fondo de escritorio. Cuando seleccionamos otra imagen para el mismo cometido, ésta se borra y se sustituye por la imagen seleccionada. Su ubicación predefinida por Wine es ésta. Y equivale a la carpeta Mis documentos de Windows.
$HOME/Wallpapers\ Bot Es el directorio predefinido para almacenar las imagenes que guardamos desde el programa. Su ubicación predefinida por Wine es ésta. Y equivale a la carpeta Descargas de Windows.
Ubicación de los iconos creados del archivo desktop
~/.local/share/icons/hicolor/{16x16,24x24,32x32,48x48,64x64,128x128,256x256}/apps/wallpapersbot.png
Entre llaves los directorios de ubicación separados por comas.
Entradas en el registro de Wine relacionadas con el programa
HKEY_CURRENT_USER\Software\Wallpapers Bot
HKEY_LOCAL_MACHINE\Software\Wallpapers Bot
Ocupación de espacio en disco de la instalación personalizada de Wallpapers Bot
68,4 MB.

5) Consumo inicial de CPU y RAM de Wallpapers Bot con Wine

Consumo inicial de CPU y RAM de Wallpapers Bot con Wine
Proceso
CPU Memoría física
awesomium_process 1 % 176,4 MB
plugplay.exe 0 % 15,7 MB
winedevice.exe 0 % 12,7 MB
WPFFontCache_v0400.exe 0 % 9,8 MB
mscorsvw.exe 0 % 8,9 MB
explorer.exe 0 % 5,9 MB
wallpapers_bot.exe 0 % 5,3 MB
wineserver 0 % 4,2 MB
services.exe 0 % 2,6 MB
TOTAL 1 % 241,5 MB

6) Crear un directorio compartido de librerías externas nativas de Windows

Para evitar tener que reinstalar o volver a copiar las librerías nativas de Windows, necesarias para poder ejecutar los programas de Windows, creamos un directorio común en nuestro Home, enlazándolo de forma simbólica al directorio raíz de la instalación personalizada de Wallpapers Bot, y modificando el PATH predefinido de Wine, de búsqueda de librerías DLL, con el siguiente archivo.

En este caso particular no es necesario utilizar el archivo de registro proporcionado en este manual, ni tampoco crear el directorio extdll, que sí utilizamos en otras instalaciones personalizadas. Con crear el directorio externo winelib es más que suficiente.

$ mkdir -p ~/winelib

7) Trasladar la instalación de Microsoft .Net Framework 4.0 a dicho directorio para evitar duplicidad de instalaciones de este paquete

Esto sólo es necesario si tenemos varias instalaciones personalizadas de aplicaciones de Windows, y supone un importante ahorro de espacio en disco. Es absurdo tener repetido el mismo paquete un montón de veces, pudiendo utilizar un directorio externo y un enlace simbólico a ese directorio, desde el directorio windows, de cada instalación personalizada de una determinada aplicación de Windows.

1) Si es la primera vez que lo hacemos ejecutaremos los siguientes comandos

$ mv $WINEPREFIX/drive_c/windows/Microsoft.NET ~/winelib
$ ln -s ~/winelib/Microsoft.NET
$WINEPREFIX/drive_c/windows

2) Si ya existe una instalación en el directorio ~/winelib ejecutaremos los siguientes comandos

$ rm -rf $WINEPREFIX/drive_c/windows/Microsoft.NET
$ ln -s ~/winelib/Microsoft.NET
$WINEPREFIX/drive_c/windows



Desinstalar, respaldar y restaurar la instalación del programa   

Desinstalación como usuario

1) MODO TRADICIONAL

***********************

2) MODO MANUALINUX

wallpapersbot-scripts.tar.gz

$ tar zxvf wallpapersbot-scripts.tar.gz
$ cd wallpapersbot-scripts
$ ./Desinstalar_wallpapersbot

Copia de Seguridad como usuario

Con este otro script creamos una copia de seguridad de la instalación completa del programa, recreando la estructura de directorios del mismo en un directorio de copias de seguridad (copibin) que se crea en nuestro home.

$ tar zxvf wallpapersbot-scripts.tar.gz
$ cd wallpapersbot-scripts
$ ./Respaldar_wallpapersbot

Restaurar la Copia de Seguridad como usuario

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 usuario cuando resulte necesario.

$ cd ~/copibin/restaurar_copias
$ ./Restaurar_wallpapersbot

Es recomendable que el directorio de copias de seguridad esté en otra partición que no sea la predefinida del usuario, incluso y mejor, en otro disco duro. Editando los correspondientes scripts podemos cambiar dicha ubicación sin ningún problema, cambiando $HOME/copibin, por por ejemplo, /mnt/datos/copibin.



Iniciamos Wallpapers Bot  

Una vez hayamos configurado las correspondientes entradas de los menús, iniciamos el programa.


Captura - Wallpapers Bot - 6


Captura - Wallpapers Bot - 07


Captura - Wallpapers Bot - 08


Captura - Wallpapers Bot - 09




Enlaces


http://wallpapersbot.net >> La web de Wallpapers Bot.

Aplicaciones Windows en Linux - Wine >> El manual de instalación de Wine.

El Centro de Control de Wine - Winecfg >> El manual del Centro de Control de Wine.


Foro Galería Blog


Actualizado el 19-02-2016

Instalar Wallpapers Bot con Wine

Instalar My Daily Wallpaper con WineConfiguración de Xorg - Xorgcfg