El menú responsive del tema Bootstrap de Drupal no funciona

Después de instalar el tema Bootstrap de Drupal 7 para un nuevo sitio de comercio online me he encontrado con que el menú responsive, el que aparece como un icono con tres rayitas cuando la pantalla es pequeña, no funciona. Googleando un poco me encuentro con este enlace en el que cuentan que el problema puede ser que la versión de JQuery que esté usando no sea la correcta. En Drupal 7 podemos mantener actualizada la versión de JQuery si instalamos el módulo Jquery Update, el cual ya viene incluido por defecto en el núcleo de Drupal 8.
Una vez instalado dicho módulo, lo activamos y ya tenemos funcionando el menú en el móvil.

Anuncios

Error #2006 – MySQL server has gone away importando archivo en PhpMyAdmin

Utilizando un entorno WAMP (Windows 10, Apache, MySQL, PHP), cuando intento importar un archivo con el volcado de una base de datos en MySQL utilizando PhpMyAdmin me encuentro con que la carga se detiene y se genera el error “#2006 – MySQL server has gone away”.
El archivo es bastante grande, y aunque he puesto los límites de memoria y de tamaño de archivo suficientemente altos en el archivo php.ini, está claro que también es necesario modificar la configuración de mysql para poder hacer la carga. El truco está en modificar la línea
max_allowed_packet = 1M
en el archivo <directorio de WAMP>/mysql/bin/my.ini dejándola como
max_allowed_packet = 10M

Curiosamente, este error nunca me había dado cuando he trabajado en Linux, debe de ser que la configuración por defecto de mySQL en Linux ya viene preparada para cualquier eventualidad 🙂

Lo he visto en Stack OVerflow (como casi todas las soluciones)

Error “Cannot find include file …” en NetBeans

Si empezamos a codificar en el lenguaje C/C++ utilizando NetBeans IDE es probable que cuando hagamos nuestra primera aplicación nos encontremos con el error “Cannot find include file …”

Para solucionarlo, cerramos el IDE e instalamos las utilidades necesarias para construir aplicaciones C++, en Debian/Ubuntu y distribuciones derivadas se consigue mediante el comando:

sudo apt-get install build-essentials

En las distribuciones de Linux derivadas de Archlinux el comando sería:

sudo pacman -S base-devel

Una vez hecho esto, abrimos de nuevo NetBeans, vamos a Tools / Options / C/C++ y en la pestaña Build Tools pulsamos en el botón Restore Defaults y luego en el botón Apply. A continuación vamos a la pestaña Code Assistance, pulsamos en el botón Reset Settings y luego en Apply.

Una vez hecho esto deberían de desaparecer los errores en los “include”.

Cómo asignar la aplicación por defecto en LXDE

Al instalar Debian 8 con LXDE he visto que cuando hago doble click en los pdf, éstos se abren por defecto con el Gimp, algo que no es lo que quiero que suceda. Para cambiar este comportamiento y que los archivos de tipo pdf se abran con el programa Evince, tenemos que lanzar el siguiente comando (con nuestro usuario):

$ xdg-mime default evince.desktop application/pdf

Y ya está. Esto mismo sirve para asignar todas aquellas aplicaciones que tengan un archivo *.desktop en el directorio /usr/share/applications/ al tipo de archivo que deseemos.

Más utilidades del comando xdg-mime se pueden encontrar en esta página.

 

Activar el touchpad en LXDE

De “fábrica” no viene activado el touchpad en Debian 8 si elegimos el escritorio LXDE, algo recomendable si la máquina no tiene muchos recursos, por ejemplo mi netbook. Para activarlo es muy sencillo pero hay que editar como root el fichero:

/usr/share/X11/xorg.conf.d/50-synaptics.conf

Y buscar una sección en la que aparezca “touchpad”, y la dejamos como aparece a continuación:

Section “InputClass”
Identifier “touchpad catchall”
Driver “synaptics”
MatchIsTouchpad “on”
Option “TapButton1″”1”
Option “HorizTwoFingerScroll””1”
Option “SHMConfig””on”
EndSection

Hemos añadido solamente las tres últimas líneas antes del final de la sección, en ellas habilitamos el “tap” con el touchpad, habilitamos el scroll con dos dedos y desctivamos el touchpad al escribir.

Esto que he escrito aquí es solo un resumen de esta estupenda entrada sobre el tema. Dice que estas mismas instrucciones sirven también para XFCE, pero yo no lo he probado.
Ah, se me olvidaba: hay que reiniciar para que los cambios surtan efecto.

Dar permisos de escritura a carpetas compartidas entre Windows y Linux en VirtualBox

vbox_logo2_gradientPara compartir una carpeta de un sistema Windows anfitrión con un sistema Linux virtualizado basta con seguir las precisas instrucciones que se especifican en este enlace, al que solo le falta añadir que, para que dicha carpeta compartida tenga permisos de lectura-escritura, es necesario modificar un poco el comando de montaje que se incorpora al fichero /etc/init.d/rc.local, que tiene que quedar así:

sudo mount -t vboxsf  -o uid=1000,gid=1000 Share /media/windows

Donde Share es el nombre que se le ha dado a la carpeta compartida en VirtualBox y /media/windows el nombre del directorio creado para alojarla en el sistema de archivos de linux.

Ojo que el comportamiento es algo extraño: una vez que accedamos a la carpeta compartida, podremos leer y modificar los ficheros que ya existan en ese directorio raiz compartido, pero no podremos borrarlos ni crear ficheros nuevos. Tampoco podremos eliminar o crear carpetas  en ese directorio raiz, pero sí que podremos eliminar, modificar y crear ficheros o carpetas dentro de una carpeta que ya exista en el directorio compartido.

Por lo tanto, si queremos copiar cosas del sistema linux virtual en la carpeta compartida de windows tendremos entonces que crear una nueva carpeta en el sistema windows dentro de la carpeta compartida, y copiarlas ahí.

 

Update-grub en CentOS 7

Para aquellos que cambian de entornos Linux basados en Debian / Ubuntu a otros basados en Red Hat como CentOS, es posible que la fuerza de la costumbre les haga teclear como si fueran comandos de validez universal cosas que son solo scripts específicos de ciertas distribuciones. Este es el caso del comando “update-grub”, que si lo ejecutamos en CentOS el sistema nos contesta:
bash: update-grub: comando no encontrado...
Pues dicho script no existe en esta distribución. Pero esto no es un gran problema, pues dicho script lo único que hace es recargar el fichero de configuración de Grub2, así que podemos obtener el mismo resultado ejecutando el comando:
grub2-mkconfig -o /etc/grub2.cfg
Tenemos que tener en cuenta que en otras distribuciones que utilicen también Grub2 es posible que la ruta a su fichero de configuración cambie. De hecho en CentOS el fichero /etc/grub2.cfg en realidad es un enlace, como podemos comprobar ejecutando:
readlink /etc/grub2.cfg
Comando que nos devuelve a dónde apunta dicho enlace, que es al fichero /boot/grub2/grub.cfg