Archivos de la categoría hechizoTecno

Conocer la versión del pom en código

Para proyectos maven, puede sernos de utilidad disponer desde nuestro código de la versión del pom.xml. Para ello añadimos la siguiente de pendencia:

<dependency> 
    <groupId>org.apache.maven</groupId> 
    <artifactId>maven-model</artifactId> 
    <version>3.3.9</version> 
</dependency> 

Ahora desde código podemos obtener la versión:

MavenXpp3Reader reader = new MavenXpp3Reader();
Model model = reader.read(new FileReader("pom.xml"));
System.out.println(model.getId());
System.out.println(model.getGroupId());
System.out.println(model.getArtifactId());
System.out.println(model.getVersion());

Termostato Netatmo con caldera y termostato Junkers de 3 hilos

Estuve a punto de devolver el termostato Netatmo; después de conseguirlo con una buena oferta, no sabía instalarlo, ya que se decía que eran necesarios 2 cables a la hora de susutituir el termostato. El mío tenía 3 :( Busqué información por Internet, y no encontraba nada claro, me daba miedo empezar a hacer pruebas sin tener claro lo que estaba haciendo. Miré el manual de la caldera y el termostato que tenía instalados, y seguía sin tener claro el proceso.
Mi caldera era una Junkers, con termostato también Junkers; por lo visto, esta caldera permite 2 tipos de configuración: con los 2 hilos, o con 3 hilos que era como estaba configurada la mía.

Sin embargo yo tenía pensado que debían salir 2 cables para la nueva configuración, y además esos 2 cables son los que salen de Ls y LR.

Si deseas saber más sobre esta configuración, contacta conmigo en el mail hechizo2000@gmail.com

RetroArch no se abre en iOS

Hace unas semanas instalé RetroArch en mi iPadMini 4 con iOs9 y Jailbreak; hice una pruebas y encontré muchísimos fallos en la versión instalada (desde cydia); al final y tras hacer varias pruebas, decidí reinstalar la aplicación. Cual fue mi sorpresa cuando vi que tras el borrado de la aplicación y la nueva instalación, RetroArch se cerraba automáticamente cuando intentaba abrirla. Finalmente decidí hacer instalación a partir del código, desde XCode en el iMac, e instalando en el ipad; con esta opción pude abrirlo (aunque me fallaban otras opciones), pero no es lo que quería. Cuando apareció una nueva versión en cydia, volví a intentar reinstalarlo, pero el resultado fue el mismo, no podía abrir la aplicación.

La solución al final fue:

1.- Eliminar RetroArch (desde cydia)

2.- Instalar iFiles (Cydia)

3.- Eliminar la carpeta /var/mobile/Documents/RetroArch

4.- Volver a instalar (desde Cydia)

Ahora sí, se me abre sin problema.

Personalizar una página WordPress

Por defecto, se le aplica un tema a todo el site; sin embargo podemos utilizar el plugin “jonradio Multiple Themes”; luego desde el panel de control de WP, en “Apariencia” podemos ir a “Multiple Themes Plugin”; desde ahí le podemos decir que para una página en concreto (o url) se le aplique el tema deseado entre los que tengamos en nuestro WP.
Ahora con el tema personalizado para una página del site (por ejemplo podemos aplicar el tema Bootstrap Basic) podemos personalizar más esa página; vamos a la edición de la página, y si escribimos contenido veremos que nos añade por defecto automáticamente al renderizar etiquetas de párrafo html y de salto de línea; para evitar esto, y para hacer algunas configuraciones más según deseemos en la página, debemos editar el fichero que renderiza la página; en este caso, el archivo hay que encontrarlo en el tema Bootstrap Basic (que es el que aplicamos a la página) y es page.php. Editamos ese archivo y vemos por ejemplo que está get_header() al principio; podemos eliminarlo, y cambiar lo que deseemos sobre ese fichero; pero para eliminar los párrafos y saltos de línea automáticos que se añaden al crear el contenido de la página, añadimos al principio:
remove_filter (‘the_content’, ‘wpautop’);
remove_filter (‘comment_text’, ‘wpautop’);
Con ello podemos ver todo el contenido creado sin párrafos, y debemos meterlos nosotros desde la edición de la página.

Problema tablas lowercase con MAMP

Me ocurrió que al ir a crear algunas tablas en una base de datos MAMP, algunos nombres estaban en minúsculas, sin embargo las sentencias Create tenían alguna mayúscula; si solo se trabaja en OSX no habría mayor problema, pues para MAC mayúsculas y minúsuclas son lo mismo, y las sentencias no distinguen; el problema me ocurrió al exportar esta base de datos a un entorno linux.

Para evitar problemas y dejar los nombres de las tablas respetando el nombre original, se utiliza una variable lower_case_table_names:

0 -> Los nombres de tablas y bases de datos se almacenan en el disco utilizando el mayúsculas y minúsculas según se especifique en las sentencias CREATE TABLE o CREATE DATABASE. En principio no de debería establecer esta variable a 0 en un sistema que no es case-sensitive (como Windows o OS X). Si se fuerza esta variable a 0 en estos sistemas y se accede a tablas MyISAM utilizando diferentes combinaciones de letras (mayúsculas y minúsculas), puede provocar la corrupción de índices.

1 -> Los nombres de tablas se almacenan en minúsculas en el disco y las comparaciones no distinguen entre mayúsculas y minúsculas. MySQL convierte todos los nombres de tabla en minúsculas en el almacenamiento y consulta. Este comportamiento también se aplica a nombres de bases de datos y alias de tablas.

2 -> Los nombres de tablas y bases de datos se almacenan en el disco utilizando mayúsculas y minúsculas según se especifica en las sentencias CREATE TABLE o CREATE DATABASE, pero MySQL los convierte a minúsculas en las operaciones de búsqueda. Esto funciona sólo en sistemas de archivos que no distinguen entre mayúsculas y minúsculas!

Si deseamos cambiar el comportamiento, añadimos en el fichero my.cnf, en el bloque [mysqld], el parámetro con el valor deseado.

En MAMP para modificar esto debemos ir al menú, en Archivo > Editar Plantilla > MYSQL my.cnf

Luego reiniciamos mysql.

Insertar números secuenciales en Word

Por ejemplo para numerar tablas.

Inertar > Campo y en Numeración elegimos Seq.

ponemos un id a esa secuencia, de forma que podamos tener varios secuenciales; por ejemplo SEQ usecase, para otro SEQ cu…

Para poder ver en una página estos campos (y no el valor), podemos pulsar opción + F9 (opción+función+F9)

Para actualizar los valores, ctrl+botón secundario, y en el menú elegimos Actualizar campos.

Permisos por defecto en OSX

Hace unos días me encontré con el siguiente problema: deseaba compartir una carpeta entre 2 usuarios de un mismo equipo; para ello creé la carpeta con uno de ellos y en las preferencias del sistema compartí esa carpeta con el otro usuario, dándole permisos de lectura escritura. Entré con el otro usuario y vi que, efectivamente, tenía acceso a dicha carpeta.

El problema se presentó después, pues cualquier fichero (o carpeta) que creaba con uno de los usuarios en esta carpeta, no otorgaba permisos de escritura a nadie más que a él mismo, por lo que el otro usuario solo podía leer el nuevo contenido; tendría que ir cambiando los permisos de cada archivo o carpeta cada vez que la creaba, lo cual es una solución que para nada me resultaba eficiente.

Contacté con el servicio técnico de Apple, y tuvieron que contactar con un supuesto experto, el cual al final tras ver lo que quería y ver que no se hacía de forma automática (también le sorprendió), me dijo que esto podría solucionarlo con algún software externos a Apple (no me dio nombres).

Como esta conclusión no me satisfizo, seguí buscando por internet y finalmente encontré la solución: la utilización de umask.

Por lo visto, cuando se crea un archivo por defecto tendría permisos 666 y para carpetas 777; sin embargo, por defecto viene configurado un umask de 022, por lo tanto los permisos de los archivos y carpetas serán:

666 – 022 = 644 (usuario con rw, grupo con r, todos con r).

777 – 022 = 755

Si alguna carpeta difiere, se le pueden cambiar los permisos, pero por defecto cuando un usuario crea una carpeta o fichero, tendrá esos permisos.

Yo deseaba que 2 usuarios tuvieran permiso de lectura y escritura a los ficheros de una carpeta, aunque me valía la solución de que fuera a todos los que se creen nuevos estén donde estén (no se si esta solución podría valer para una carpeta en concreto). Para ello hay que cambiar el umask de los usuarios, de forma que los permisos sean 664 (archivos) y 775 (carpetas). Por tanto el umask debe ser 002

666-002=664

777-002=775

El comando en Yosemite sería:

sudo launchctl config user umask 002

En Mavericks y anteriores habría que creado un fichero (sudo /etc/launchd-user.conf) que contenga en una línea umask 002.

En ambos casos para que tenga efecto hay que reiniciar el sistema.

Para conocer el umask, tecleamos desde un terminal: umask

Una vez entendido esto, hay que saber que el sistema también puede crear archivos o carpetas, y por defecto estos también tienen se crean con los permisos por defecto para usuarios; para cambiarlo hay que modificar con umask (por ejemplo si lo deseamos dejar como para los usuarios):

 sudo launchctl config system umask 002

En Mavericks y anteriores habría que creado un fichero (sudo /etc/launchd.con.conf) que contenga en una línea umask 002.

Para saber los permisos que se aplican cuando se crea por el sistema podemos utilizar

umask -S