Haciendo funcionar WMware Workstation 12 en Fedora 23

Fedora-logo-black.sh-600x600Si has actualizado de Fedora 22 a Fedora 23 (o si, como en mi caso, simplemente has pasado de otra distribución a Fedora 23) te habrás encontrado con que a pesar de que al instalar VMware Workstation 12 aparentemente todo funciona correctamente, al intentar iniciarlo no sucede nada.

El problema (visible si intentas arrancar el VMware desde una consola) es un cambio de símbolos en las librerías en Fedora 23 que no cuadra con lo que espera VMware. Para solucionar esto (al menos hasta que VMware o Fedora proporcionen otra solución) podemos copiar las librerías del sistema a la ruta de librerías de VMware, y forzar al mismo a que use las librerías de VMware (entre ellas las que hemos copiado del sistema).

Antes de nada reconstruimos los módulos de VMware (todo esto deberemos hacerlo con permisos de root):

vmware-modconfig --console --install-all

A continuación copiamos las siguientes librerías:


cp -afv /usr/lib64/libgio-2.0.so.0.4600.2 /usr/lib/vmware/lib/libgio-2.0.so.0/libgio-2.0.so.0
cp -afv /usr/lib64/libglib-2.0.so.0.4600.2 /usr/lib/vmware/lib/libglib-2.0.so.0/libglib-2.0.so.0
cp -afv /usr/lib64/libgmodule-2.0.so.0.4600.2 /usr/lib/vmware/lib/libgmodule-2.0.so.0/libgmodule-2.0.so.0
cp -afv /usr/lib64/libgobject-2.0.so.0.4600.2 /usr/lib/vmware/lib/libgobject-2.0.so.0/libgobject-2.0.so.0
cp -afv /usr/lib64/libgthread-2.0.so.0.4600.2 /usr/lib/vmware/lib/libgthread-2.0.so.0/libgthread-2.0.so.0

Ahora ya podemos iniciar VMware de esta forma:

VMWARE_USE_SHIPPED_LIBS=force vmplayer

Para hacernos la vida más sencilla podemos crearnos un script:

mv -iv /usr/bin/vmplayer /usr/bin/vmplayer.bin
vi /usr/bin/vmplayer

Ahí ponemos esto:


#!/bin/bash

export VMWARE_USE_SHIPPED_LIBS=force
/usr/bin/vmplayer.bin $*

Y le damos permisos de ejecución:

chmod +x /usr/bin/vmplayer

Ahora ya nos funcionará VMware al abrirlo desde el lanzador correspondiente en el menú de aplicaciones.

De aventuras con los iSPI Performance for Metrics & Traffic de NNMi 10.10 (parte 2)

HPEn la parte 1 de la instalación pasé por misteriosos procesos invisibles bloqueando la memoria de Sybase y por una desinstalación de Metrics que por alguna razón igualmente misteriosa dejó podrida la base de datos de NNMi.

Le toca ahora el turno a Traffic, con un proceso de instalación teóricamente igual de sencillo que Metrics y por tanto potencialmente igual de propenso a encontrar problemas.

En esta segunda parte tendremos cosas tan amenas como instalación de componentes en rutas incorrectas, creación de rutas con permisos incorrectos y scripts te bloquean la configuración por no saber identificar quién es tu usuario.

Sigue leyendo

De aventuras con los iSPI Performance for Metrics & Traffic de NNMi 10.10 (parte 1)

HPDe entre todas las cosas en las que son expertos en HP es especialmente remarcable su habilidad para inducir una sensación de pánico al enfrentarte a una instalación tipo “next -> next -> finish”, al convertirlas en algo más del estilo de “next -> next -> fubar”.

La idea inicial de esta instalación era poner por una parte en un servidor NNMi corriendo junto con el iSPI de Metrics, y en otro distinto instalar el iSPI de Traffic.

Primera lección: si vas a instalar Metrics en el mismo servidor que NNMi, asegúrate de hacer backup de NNMi porque si por alguna razón la instalación de Metrics falla y quieres desinstalarlo, hay bastantes probabilidades de que te corrompa la instalación de NNMi.

Y claro, en este caso falló.

Sigue leyendo

Mejorando las fuentes de Fedora 23

Fedora-logo-black.sh-600x600Nuevo portátil, y por tanto oportunidad perfecta para cambiar el Ubuntu que venía usando desde hace años y probar con otra distro diferente.

Dado que uno de mis pegas con Ubuntu era la falta de sincronización con las releases de Gnome, que hacía que las nuevas versiones del escritorio no estuviesen disponibles hasta la siguiente release de Ubuntu (6 meses después, y que aun así no todos los paquetes estuviesen disponibles o funcionasen correctamente), he tirado esta vez por Fedora 23.

Viniendo de Ubuntu, una de las cosas que llama la atención de Fedora es que las fuentes por defecto se ven bastante mal. Da una impresión un poco desagradable así de primeras, aunque por suerte es fácilmente corregible.

Sigue leyendo

Solucionando ventilador al 100% al volver de suspender el sistema

recoveryLlevo teniendo este problema con Ubuntu en un portátil desde… bueno, desde siempre, que yo recuerde, pero como normalmente suelo apagarlo no me había preocupado de buscar cómo arreglarlo.

Hoy me picó la curiosidad y me puse a investigar. Resulta que al parecer el problema viene de que el SO asume que al volver del estado suspendido los ventiladores estarán en el estado en que estaban antes de suspender, y esto dependiendo del hardware no tiene por qué ser así.

Parece que en algunos sistemas (no se cuales, pero en el mío definitivamente debe ser el caso) al volver de la suspensión los ventiladores se ponen automáticamente al 100%, y como el SO no los restaura a ningún estado se quedan ahí bufando sin razón.

De hecho si cuando están ahí a tope lanzas un proceso intensivo que normalmente aumentaría la frecuencia de los ventiladores, al terminar dicho proceso los ventiladores se ralentizan de vuelta a un estado normal, así que definitivamente parece confirmarse la hipótesis del estado inicial incorrecto.

La primera solución que encontré hablaba de crear un script en /etc/pm/sleep.d que pusiese a cero los ventiladores. Supuestamente los scripts en esta ruta se ejecutan al volver desde el estado suspendido, así que debería funcionar automáticamente.

Al script le llamaremos por ejemplo 10_fancontrol, y sería:


#!/bin/sh
case "$1" in
        resume|thaw)
                for i in $(seq 0 15) ; 
                do 
                        echo "0" > /sys/devices/virtual/thermal/cooling_device${i}/cur_state
                done
;;
esac

En la ruta /sys/devices/virtual/thermal/ hay una serie de directorios, comenzando por cooling_device0 y llegando hasta cooling_device10 o más, dependiendo del hardware (en mi portátil va hasta el 15).

Si haces un cat del archivo cur_state dentro de cada uno de esos directorios verás que hay o bien un 0 o un 1, correspondiendo el 1 al estado en que el ventilador está activo, así que lo que hacemos es poner todos a cero.

El problema: resulta que ahora con systemd esto ya no funciona, ya que no se ejecutan automáticamente los scripts de esa ruta.

La solución: crear un servicio de systemd.

Sigue leyendo

Destino cruel

aa4838cc-1bfb-4871-bafd-fa3210bdcdf2._V330687884__SR300,300_Ah, Destiny. Aquella beta que supuestamente ofrecía una pequeña muestra del juego final y que resultaba ser casi una tercera parte del juego completo.

Aquel hype del mundo abierto con numerosos planetas para explorar y cantidad de actividades para hacer, que se quedó en cuatro áreas en cuatro planetas y un número limitado de actividades increíblemente repetitivas.

Aquellas promesas de DLCs con nuevas zonas y expansión de la historia que se quedó en abrir un par de pequeñas zonas ya existentes en los mapas, y más misiones inconexas, sin demasiado sentido y ninguna trascendencia.

Pues bien, llega el segundo DLC, House of Wolves, y con él una nueva vuelta de tuerca a la mecánica de máquina tragaperras.

Sigue leyendo

Actualizando Nexus 4 a Android 5 Lollipop

Hace un par de días Google publicó las imágenes de fábrica y de actualización OTA para Nexus 4, con algo de retraso respecto a los demás dispositivos Nexus.

Para quien no le importe devolver su teléfono al estado original de fábrica (perdiendo todos sus datos), la imagen de fábrica es una opción para actualizar sin tener que esperar a que Google nos envíe la actualización a nuestro teléfono (ya que al hacerse de forma escalonada, esta actualización puede tardar semanas en llegar).

Yo soy más bien vago en ese aspecto y prefiero no tener que volver a configurar todo, pero por suerte tenemos también disponible la imagen OTA que nos permite pasar a Android 5 Lollipop de forma manual, pero con el mismo resultado que con la actualización automática.

Sigue leyendo

Bloqueando publicidad desde el archivo hosts

block-adsNada nuevo realmente, pero no me había dado por usarlo hasta hace un par de días.

Cuando piensas en bloquear publicidad normalmente piensas en el navegador, y al pensar en el navegador piensas en extensiones. De hecho hay algunas muy conocidas como adblock que funcionan bien.

Usar extensiones tiene sus ventajas, como por ejemplo el que te olvides de gestionar las actualizaciones de la lista de bloqueos o que además la extensión se encargue de eliminar el contenedor de la publicidad en la página de forma que no queden huecos vacíos donde ésta debería estar.

También tiene sus inconvenientes: sólo bloquea publicidad en el navegador en el que está instalada y además ralentiza ligeramente la navegación.

Una opción alternativa es usar nuestro archivo de resolución de nombres para hacer el bloqueo.

Sigue leyendo

Error al generar script java sobre HTTP en vugen

HPSi ya puede ser de por si algo desconcertante enfrentarse con un nuevo tipo de script de VUGen que no hayas usado nunca antes, aun lo es más cuando no es ya que el script que grabas no funcione como esperas si no que ni siquiera se genere ningún script en absoluto.

Grabando con el “java sobre HTTP” todo parece ir bien, con el contador de eventos subiendo como cabría espera al ir realizando la grabación. Al parar la misma y generarse el script sin embargo me aparece esto:

Failed to copy the file C:\Documents and settings\(usuario)\LocalSettings\Temp\noname10\data\vuser_init.java to C:\Documents and settings\(usuario)\LocalSettings\Temp\noname10\data\vuser_init.java(Source directory or file does not exist).

¿Habré hecho algo mal? ¿Será que este tipo de script no me vale?

Pues no, el caso es que parece que es un bug conocido de VUGen (necesitas un ID de soporte asociado para acceder al siguiente enlace):

http://support.openview.hp.com/selfsolve/document/KM1015235

Sigue leyendo

Programando con Node-Webkit. 3: cliente-servidor

nodewebkitHace unos días hablaba de montar una aplicación cliente-servidor rápidamente usando ssh para ejecutar comandos remotos.

Bueno, funcionar funciona, pero tiene algunos inconvenientes como por ejemplo depender de usuarios de sistema con los que hacer login. Disponiendo de tiempo y ganas sería mejor desarrollar nuestro propia app de servidor con nuestro propio sistema de autenticación, y mejor aun si además con ello conseguimos que nuestra aplicación sea totalmente portable.

Puede haber mil formas de hacerlo, pero ya que estamos metidos con node-webkit le daremos una vuelta a una de sus alternativas en la vertiente de server: express.js.

Sigue leyendo