Desventuras en DSpace – Parte 4: El Mirage 2

Instalando el Mirage 2

El tema Mirage 2 es una versión respetable de Tema, en comparación con los esperpentos de temas que vienen por defecto en DSpace.

Sin embargo, hasta la versión 6.3 del DSpace, hay que hacer un trabajo adicional para instalarlo, ya que no viene preinstalado.

Aún si no vamos a usar este tema, resulta un buen ejercicio activarlo, para familiarizarse mejor con el DSpace, así que allá vamos.

De acuerdo a la referencia en https://wiki.lyrasis.org/display/DSDOC6x/Mirage+2+Configuration+and+Customization, si cumplimos con los requisitos (lo cual es mucho pedir), solo tendríamos que ejecutar el comando:

vn package -Dmirage2.on=true

Y sentarse a esperar, mientras vemos nuestros vídeos favoritos.

En el mundo real, este comando siempre fallará. Y no hay que verlo como el vaso medio vacío, sino que hay que tomarlo como una oportunidad para aprender. En mi caso, después de unos minutos, obtengo el error:

Que me resulta extraño, y que no sé cómo solucionarlo, pero me quedo tranquilo, con el pensamiento «Algo se me ocurrirá».

Identificando errores

Lo primero que debemos aprender al instalar Mirage 2, en DSpace, es saber identificar a los errores, porque hay un truco. DSpace tratará de engañarnos, confundirnos, engatusarnos.

El truco es: Nunca se deben ver los últimos mensajes de error que aparece. El verdadero mensaje de error está más arriba. Pera verlo, hay que subir un poco en la pantalla del terminal.

Instalando con dependencias

Si intentamos instalar el Mirage 2 con:

vn package -Dmirage2.on=true

Y obtenemos errores, debemos identificar cuál es el tipo de error. Si aparecen unas advertencias relacionadas al Ruby, es probable que debamos instalar todas las dependencias manualmente para poder instalar el Mirage 2.

IMPORTANTE: Debemos tener acceso a Internet (ipv4) para poder instalar las dependencias necesarias.

Lo primero que podemos hacer es seguir las instrucciones que nos indican en: https://github.com/DSpace/DSpace/tree/dspace-6_x/dspace-xmlui-mirage2#installation, y que consiste en instalar todos los requisitos, como el Git, el Node, Bower, Grunt, Ruby. Compass. La verdad es que este tema ha sido construido con más tecnologías que un transbordador espacial.

Es importante revisar que cada dependencia se haya instalado correctamente. Eso se hace leyendo los mensajes que se generan cuando se instalan estas dependencias. Si no sabe inglés, basta con que no aparezca las palabra «ERROR» o algo parecido.

Si tienen problemas para instalar el Ruby, ver la siguiente sección.

Es recomendable, usar las versiones indicadas, para asegurarse una correcta compatibilidad entre las herramientas.

Luego de instalar todas las dependencias (si es que tuvo suerte), ahora podemos instalar nuevamente el Mirage 2, pero ahora con otro comando, como se indica en: https://github.com/DSpace/DSpace/tree/dspace-6_x/dspace-xmlui-mirage2#installation:

cd [dspace-source]   
mvn package -Dmirage2.on=true -Dmirage2.deps.included=false

Si no sabe qué es [dspace-source], puede leer los artículos anteriores.

Si todo va bien (cosa rara), se obtendrá una pantalla como esta:

Si hay mensajes de error, la primera tarea sería identificar qúe hemos hecho mal. La recomendación es ver los mensajes de error significativos.

Si logramos ejecutar con éxito la instalación ¡FELICIDADES! Pero esto no es todo, todavía debemos finalizar con la instalación del Mirage 2. Lo anterior es solo la construcción.

La instalación, como se indica en la documentación, requiere ejecutar el siguiente comando, desde la ruta [dspace-source]/dspace/target/dspace-installer/:

ant update

Esto no debería darnos problemas. Siempre mirar que no aparezca algún mensaje de error. Las advertencias son normales y podrían indicar que algo va (o podría ir) mal. Pero en la mayoría de casos son inofensivas.

Activando el tema

Ya para terminar, hay que activar el tema modificando el archivo [dspace]/config/xmlui.conf, ingresando la cadena:

<theme name=»Mirage 2″ regex=».*» path=»Mirage2/» />

En mi caso, quedaría como:

Y finalmente solo queda bajar y levantar el Tomcat, como ya enseñé en el artículo anterior.

IMPORTANTE: Un detalle más. Hay que copiar el tema al /webapps del Tomcat (Que ya debe conocer), de otra forma obtendrá un error como «Recurso no encontrado» con un JavaFileNotFoundException, apuntando a la ruta del Tomcat.

En mi caso tuve que ejecutar este comando:

cp -r /dspace/webapps/xmlui/themes/Mirage2 /opt/tomcat/webapps/xmlui/themes/Mirage2

Si por milagro, todo sale bien. Ya podrá ver su tema Mirage 2, nuevecito en la página del DSpace.

Si no funciona, hay que empezar de nuevo y verificar que todo se haya hecho como indica la documentación. Yo pude instalarlo (después de superar varias complicaciones) así que puedo dar fe de que funciona, aunque no sé si eso sirva de consuelo.

Cuando el Rubí da problemas

Si tienen problemas para instalar el Ruby (yo los tuve), pueden buscar opciones alternativas, como la indicada en https://www.researchgate.net/publication/335128891_Installing_latest_version_Dspace_63_on_ubuntu_1604_with_Mirage2_enabled. En mi caso me funcionó:

sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install curl
gpg –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
\curl -sSL https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
rvm install 2.5.3

Para verificar si hemos logrado instalar correctamente el Ruby, debemos lanzar el comando «ruby -v » y , si todo va bien, veremos la versión de Ruby instalada.

Si nos falla el comando «gpg –keyserver …» podemos intentar con otro servidor. En mi caso pude lograrlo con:

gpg –keyserver keyserver.ubuntu.com –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Problemas con el gruñido (Grunt).

Sí al instalar el Mirage2 se obtienen mensajes como:

Es probable que se tenga problemas con la versión de «grunt» o «grunt-cli» que se hay instalado.

Para validar que esto es un problema con el «grunt/grunt-cli» podemos ejecutar los siguientes comandos:

cd [dspace-source]   
grunt --version

Si se aprecia el mismo mensaje de error, es sin duda un problema de versiones del «grunt» o «grunt-cli»:

Como se puede deducir, sin ser muy inteligente, para que el Mirage 2 funcione, es necesario que haya compatibilidad entre las versiones de las dependencias que se instalan.

Los programas «grunt» y «grunt-cli» son dos programas independientes que se instalan también de forma separada.

En mi caso, aunque no tuve problemas con «grunt», la instalación funcionó bien con la versión 1.3.2 de «grunt-cli».

Para corregir la versión de «grunt-cli», se debe desinstalar e instalar, de nuevo, otra versión del grunt-cli:

npm uninstall grunt-cli -g

npm install grunt-cli@1.3.2 -g

La segunda línea es la forma de instalar el «grunt-cli» especificando una versión. De otra forma se instalará la última (se supone).

Para ver las versiones disponibles de «grunt-cli» se puede echar una mirada a su Github https://github.com/gruntjs/grunt-cli, en la sección «tags».

Para validar que ahora funciona el «grunt-cli» repetir el comando «grunt –version».

Es importante trabajar siempre en el directorio: [dspace-source] (incluyendo la instalación) para que esto funcione bien.


2 comentarios

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*