Planeta Linux México

Subscribe to canal de noticias Planeta Linux México
Planeta Linux México - http://planetalinux.org/mx
Actualizado: hace 14 mins 32 segs

Octavio Alvarez: Video: PostgreSQL – Reunión Gultij, enero de 2017

Lun, 30/01/2017 - 02:28

El pasado sábado 21 de enero de 2017 durante la reunión mensual del Gultij, Grupo de Usuarios de GNU/Linux de Tijuana, México, di una presentación sobre PostgreSQL, un sistema manejador de bases de datos objeto-relacional (ORDBMS).

Liga al video en YouTube: https://www.youtube.com/watch?v=xyq6b9wZ0aw

Víctor Martínez: Nativo digital, de nuevo

Mié, 25/01/2017 - 13:32

Ya he escrito algunas cosas sobre nativo digital por acá, especialmente el como me parece que ha sido contraproducente para la educación y actualización de adultos, pero y aunque lo mencionamos ya en la plática y en las discusiones entre colegas y se intuía iba a suceder, pues resulta que ya pasó y se han encontrado nuevos problemas con el abuso del mismo y para no romper la costumbre lo dicen lo publican primero del otro lado del océano.

Mi animal mitológico favorito: El nativo digital. [1]

La charla es muy buena aunque sea comercial del libro por salir  ya a la venta [2]

[1] http://www.elmundo.es/sociedad/2017/01/22/5880b099e2704e7c598b45e2.html
[2] http://www.planetadelibros.com/libro-los-nativos-digitales-no-existen/231380

Víctor Martínez: Mi queja con lo virtual

Mié, 25/01/2017 - 13:02

Hace mucho tiempo, leí el libro: Lo virtual: virtudes y vértigos de Philippe Queau (altamente recomendado ahora que nos quieren vender esto como novedad) [1] y quede fascinado con las posibilidades de mundos posibles que no existen, de decir la realidad virtual o como ahora se llama los mundos de inmersión completa… el propio Levy discute extenso sobre las limitaciones del termino y ayer en clase me avente a incorporar esta discusión a mi clase

Virtual en su acepción rápida significa potencial [1] “1, adj, Que puede producir un efecto, aunque no lo produce de presente en oposición a efectivo o real, 2 adj. Implícito, tácito, 3 adj. Fis. Que tiene existencia aparente y no real” y el punto es que tenemos mucho rato diciendo plataforma de educación virtual o educación virtual y a mí me sigue molestando, cuando andamos en otros lugares de Internet como Facebook ya no se habla de virtualidad y como hice la pregunta en clase, si rompes con la amiguita o el amiguito en Facebook ¿eso es virtual o real? Hubo una época en que se dividía el tiempo en la red con el tiempo en vida real (IRL In Real Life), pero hoy día no veo siquiera la utilidad de esto lo que hacemos en Internet, como nuestro banco, como las redes sociales (mediadas por computadora) son realidad no virtualidad, vaya que lo que hacemos hoy en la red modifica nuestra realidad inmediata, no niego que hay quien tiene separado y disociado su ser en diferentes avatares en redes diferentes y con sobrenombres distintos, pero para la mayoría de nosotros no es el caso.

Más importante aún quitarle el virtual a la educación en línea me parece un buen objetivo en mediano plazo, ya nos sucedió en una época que teníamos que decirle e-learning existiendo en español una mejor forma…

[1] Queau, Philippe (1995)  Lo virtual :   virtudes y vertigos, Barcelona :   Paidos Iberica
[2] Ni tan rapida termine transcribiendo toda la entrada de la RAE, pero su uso cotidiando es potencial, no real http://dle.rae.es/?id=buDJhh3

Fco. de la Torre Inguanzo: Buscar archivos con catfish en thunar

Mar, 24/01/2017 - 09:07

LinuxmanR4
LinuxmanR4 - Historias sobre Linux, Manjaro, Elastix, software libre, afeitado y barbas clásicas.

Empecé este año con un cambio de escritorio, abandoné el Cinnamon que me había acompañado hasta hace poco para sustituirlo con XFCE que es el entorno de escritorio elegido por Manjaro Linux.

Hubo varios motivos, pero el principal es que muchos recursos eran gastados en efectos y decoraciones que no me aportaban nada. Prefiero mil veces una interfaz rápida a una bonita.

Lo bueno es que XFCE no es tan primitivo, una vez enchulado es visualmente agradable con la ventaja de que es muy ligero.

¿Cómo buscar archivos?

Claro que con el cambio empiezas a extrañar algunas cosas. Por ejemplo,  Thunar no tiene un buscador de archivos. Con Nemo (el administrador de archivos de Cinnamon) sólo tenía que presionar Ctrl + F y listo, a buscar el archivo que necesitaba. Bueno Thunar no tiene nada de eso, al menos no lo tiene incluido por default.

catfish

Claro que hay herramientas para buscar archivos,  una de ellas es catfish, pero es una herramienta independiente. El truco es integrar esta aplicación a Thunar y para eso tenemos … (redoble de tambores) … las Acciones Personalizadas.

Buscar archivos

Solo hay que ir al menú EditarConfigurar acciones personalizadas y llenar los espacios como sigue:

  • Nombre: Buscar
  • Descripción: Para buscar archivos (opcional)
  • Orden: catfish --path=%f

Si todo se hizo correctamente verán una nueva opción en el menú Archivo o si presionan el botón del mouse sobre un área vacía de Thunar.

Aparece como menú contextual

Un consejo, tengan cuidado de lo que señalan al momento de llamar a catfish, el directorio donde se inicia la búsqueda puede ser un poco complicado al principio, ya sabrán de que les hablo cuando lo pongan en práctica.

Listo para buscar ese archivo…

Catfish tiene una interfaz limpia, simple y lo mejor es que incluye filtros para tipos de archivo o por fecha. Algo que no tienen las búsquedas con Nemo.

Las acciones personalizadas pueden servir  a otros propósitos. Denle un vistazo al wiki de Arch Custom actions para explorar otras posibilidades.

Buscar archivos con catfish en thunar
Linuxman.

Octavio Alvarez: Esperar hasta terminar la entrada estándar

Jue, 19/01/2017 - 17:34

Si uno teclea líneas a la entrada estándar desde el teclado, ésta se va procesando línea por línea:

$ cat -n hola 1 hola mundo 2 mundo maravilloso 3 maravilloso ^D $

Así, resulta impráctico marcar la salida usando el ratón para copiarlo al portapapeles o simplemente para ver la salida junta. Como alternativas tenemos:

  • Marcar y copiar línea por línea, acumulando el resultado en un editor antes de copiar todo el texto. Muy impráctico.
  • Redirigir la salida a un archivo, pero aún queda pendiente tener que procesar y borrar el archivo después.
  • Usar tac | tac: $ tac | tac | cat -n hola mundo maravilloso ^D 1 hola 2 mundo 3 maravilloso $

tac es una instrucción que concatena archivos y los despliega en reversa (LIFO en lugar de FIFO por línea). Por naturaleza, tac se ve en la obligación de leer la entrada estándar completa antes de poder mandar la primera línea de su salida. Si invertimos la entrada dos veces se obtiene el efecto deseado.

No sé hasta cuántas líneas soporte antes de volverse lento. Aquí con 10,000 líneas funciona aún bastante bien.

¿Alguien conoce alguna mejor manera?

Actualización: Dualbus me recomienda sponge de moreutils. Ejemplo:

$ sponge | cat -n hola mundo maravilloso ^D 1 hola 2 mundo 3 maravilloso $

Según el manual, sponge “absorbe la entrada estándar y la escribe a un archivo”.

Miguel de Icaza: Creating .NET Bindings for C Libraries with ObjectiveSharpie

Mié, 18/01/2017 - 17:21

We created the ObjectiveSharpie tool to automate the mapping of Objective-C APIs to the .NET world. This is the tool that we use to keep up with Apple APIs.

One of the lesser known features of ObjectiveSharpie, is that it is not limited to binding Objective-C header files. It is also capable of creating definitions for C APIs.

To do this, merely use the "bind" command for ObjectiveSharpie and run it on the header file for the API that you want to bind:

sharpie bind c-api.h -o binding.cs

The above command will produce the binding.cs that contains the C# definitions for both the native data structures and the C functions that can be invoked.

Since C APIs are ambiguous, in some cases ObjectiveSharpie will generate some diagnostics. In most cases it will flag methods that have to be bound with the [Verify]. This attribute is used as an indicator on your source code that you need to manually audit the binding, perhaps checking the documentation and adjust the P/Invoke signature accordingly.

There are various options that you can pass to the bind command, just invoke sharpie bind to get an up-to-date list of configuration options.

This is how I quickly bootstrapped the TensorFlowSharp binding. I got all the P/Invoke signatures done in one go, and then I started to do the work to surface an idiomatic C# API.

Octavio Alvarez: postfix_delivery_search.bash

Lun, 16/01/2017 - 22:07

Este script sirve para buscar en los logs de Postfix 2.9.6 la historia de entrega de los correos que cumplan con el from= y el to= que se indiquen en el primer y segundo argumento del script, respectivamente.

#!/bin/bash # Configuration variables REQUIREMENTS="gawk sort uniq grep" LOGSOURCES="/var/log/mail.info.1 /var/log/mail.info" # Check requirements which $REQUIREMENTS > /dev/null 2>&1 || { echo The following required programs were not found: for R in $REQUIREMENTS; do which "$R" > /dev/null 2>&1 || echo "$R" done exit 63 } # Check arguments [ $# -eq 2 ] || { echo Usage: "$0" source_address destination_address exit 1 } # These work for Postfix 2.9.6 function get_filter_from() { echo 'BEGIN { FS="[ :]+"} /from=<'$1'>/ { print $8 }' } function get_filter_to() { echo 'BEGIN { FS="[ :]+"} /to=<'$1'>/ { print $8 }' } FILTER_FROM=$(get_filter_from "$1") FILTER_TO=$(get_filter_to "$2") # For each mail ID found in both from= and to= lines... for ID in $(cat <(gawk "$FILTER_FROM" $LOGSOURCES | sort | uniq) \ <(gawk "$FILTER_TO" $LOGSOURCES | sort | uniq) | sort | uniq -d) do echo ====== $ID ====== grep $ID /var/log/{mail.info.1,mail.info} done

Luis Armando Medina: Dell Presicion con Ubuntu te ahorra $2262.00 pesos

Jue, 12/01/2017 - 10:29
Dell tiene una larga trayectoria vendiendo equipos con Ubuntu Preinstalado y listo para funcionar, desde hace bastantes años ha puesto a la venta diversos equipo y hoy hay un Dell Presicion con el que puedes ahorrar $2,262.00 solo por usar … Continue reading →

Gustavo Rubio: En México todos tenemos una agenda

Jue, 12/01/2017 - 01:24

Cuando mi mujer me dijo que no había gasolina el pasado Sábado 7 de Enero pensé que estaba exagerando. La verdad es que, como parte de una terapia auto-recetada, me he abstenido de leer demasiado las noticias para mantenerme enfocado en otras actividades desde hace meses, bueno, suelo al menos leer los titulares, pero paso de largo los detalles. Ese mismo Sábado por la noche decidí ir a echar gasolina a la estación mas cercana y bueno, me llevé la sorpresa (amarga) de todos los demás que al parecer sí estaban atentos no solo de las noticias sino de la situación. Como yo suelo recargar el tanque por semana supongo no experimenté el caos en carne propia hasta que me afectó.

Ese mismo día recuerdo haber quedado de comer con mi esposa en algún lado por zona río (zona comercial/financiera de Tijuana, para los foráneos)  al mediodía, cuando ambos nos desocuparamos de nuestros respectivos compromisos; ella de un desayuno con amigas y yo probablemente de levantarme tarde. Finalmente el plan se vino abajo y terminamos comiendo en casa pues el tráfico por las manifestaciones simplemente había convertido en caos la ciudad.

Si bien estoy a favor de manifestaciones genuinamente sustentadas últimamente me he convertido en un tipo bastante moderado en cuestiones socio-políticas. La verdad es que conforme han pasado los años he aprendido lo que todos me repetían cuando era adolescente: “Un día vas a madurar” y bueno, supongo que he madurado. ¿Significa madurar perder el espíritu de rebelión? O mejor dicho, ¿Puede uno apoyar causas y aun así considerarse moderado?

Verán, hay un refrán que dice que “Cada quien jala agua para su propio molino” y bueno, México es un país donde llevar agua al molino propio es deporte nacional. Antes solía tener largas conversaciones, debates y hasta peleas con amigos, no tan amigos, familiares, maestros y quien se me pusiera enfrente sobre los problemas propios del país, las raíces y hasta posibles soluciones (que ingenuo) pero conforme he crecido he encontrado cada vez más difícil mantener la energía para desarrollar dichos debates o siquiera propiciarlos, o sea, me da mucha hueva conversar sobre problemas tan complejos sin tener una dirección clara, sin embargo, siendo una persona tan obstinada, inconscientemente he desarrollado la capacidad de analizar, en segundo plano, cada situación de los problemas que aquejan a la sociedad mexicana en particular y siempre he llegado a la misma conclusión: en México todos tenemos una agenda particular.

Solo hay que voltear a ver el problema de los combustibles. Situación que afectó a muchos, muchísimos ciudadanos, y sectores variados, el de los transportistas, por ejemplo, que con pancartas con leyendas como “fuera el gobierno corrupto” en las parrillas de sus tracto-camiones enviaban un mensaje de hartazgo. Lo curioso es que un gran porcentaje de estos transportistas son los mismos que aplican su “mochada” con las autoridades para poder transportar 40t de carga en vez de 25t y que tienen destruídas vías y carreteras por ejemplo.

Y también ahí en la marcha muy seguramente estuvo el taxista que no respeta el reglamento de tránsito, los autobuses de líneas de transporte urbano con precios inflados, unidades contaminantes y mal servicio, el propietario de un vehículo chocolate que no lo quiere legalizar pero si le alcanza para la cerveza del fin de semana. Y así, muchas personas, sectores y grupos se cuelgan de situaciones políticas en beneficio de sus propios intereses pero cuando toca hacer lo propio para no joder a los demás, bueno… no hacemos nada.

Si bien muchos de los protestantes son personas genuinamente responsables, preocupadas y sobre todo ocupadas (léase: cívicamente responsables) la mayoría guarda(mos) y cargamos nuestros propios pecados y al final eso, en conjunto, se manifiesta en nuestros gobernantes y burócratas; desde el que nos atiende en ventanilla en una empresa de estado, el regidor local, el delegado de alguna secretaría, hasta nuestro congreso y presidente. Vivimos en un sistema político de representatividad donde, tristemente, sí estamos representados por mayoría.

Así que siempre que vuelvo a tener un debate o simple conversación sobre los cientos de problemas que aquejan al país recuerdo este extracto:

México es una sociedad en la que gente quiere dos policías, uno que sea honesto y detenga delincuentes y otro que le haga un “paro”, quiere dos políticos; uno que sea integro y otro que viole las leyes cuando este en un problema y necesite de su ayuda; donde quiere dos códigos de ética, uno donde mi mujer sea sumisa y fiel, y otro donde la mujer del vecino sea flexible, quiere dos códigos migratorios; uno que le conceda visas de trabajo en EUA y otro donde expulse a los centroamericanos de nuestro país, una sociedad que exige buenos empleos pero demasiada floja para asistir puntualmente a ellos

Y recuerdo que mientras la revolución no empiece desde adentro nunca tendremos un cambio y para eso tenemos que dejar de pensar en solo jalar agua para nuestro propio molino.

Fco. de la Torre Inguanzo: El diálogo de abrir o guardar archivo tarda mucho tiempo aparecer

Lun, 09/01/2017 - 10:02

LinuxmanR4
LinuxmanR4 - Historias sobre Linux, Manjaro, Elastix, software libre, afeitado y barbas clásicas.

Nada mejor para empezar bien el año que un problema de esos que no tienen explicación.

Les cuento,  de buenas a primeras tuve un problema bastante molesto. Al abrir un archivo o guardar uno nuevo el cuadro de diálogo que aparece y que te permite elegir o darle nombre al archivo tardaba más de 20 segundos enaparecer y era una verdadera molestia. 

Los problemas del cambio.

El año pasado cambié mi escritorio principal de Cinnamon a XFCE principalmente porque es un escritorio más ligero y cumple bastante bien con mis actividades.

Le invertí unos días en quitar algunos elementos de Cinnamon e instalar otros de XFCE hasta que me quedó un entorno de trabajo a mi gusto. Y estaba trabajando bien, hasta que se presentó este problema.

La actualización

Luego creí que era un problema de actualización. A veces pasa que no todos los paquetes se acoplan perfectamente. Tengo más de 2 años con esta instalación de Manjaro  y es normal que no todo se ajuste a la primera.

Creía que era un problema de actualización porque el problema se presentó justo después de actualizar.  Aunque después pude averiguar que no tenía nada que ver.

Tuve un pequeño problema con la actualización pero fue porque el ciclo de vida del kernel 4.7 había llegado a su fin. Así que lo quité usando el Manjaro Settings Manager para quedarme con la versión 4.4 que es la versión recomendada.

El kernel 4.4 en ejecución. Intentando reproducir el problema.

Como no encontraba información que me ayudara a solucionar este problema intenté reproducirlo para pedir ayuda en los foros de Manjaro.

Verán, lo primero que hice fue abrir GIMP y seleccionar el menú AbrirArchivo y esperar unos 20 segundos a que apareciera el cuadro de diálogo.  Una vez que se mostraba en pantalla trabajaba normalmente.

Si volvía a abrir o guardar un archivo ya no había demora alguna. Pero si cerraba GIMP y hacía lo mismo, nuevamente me aparecía el retraso.

Ejecuté GIMP desde la terminal y me apareció este mensaje:

gimp: gimp_wire_read(): error Error creating proxy: Error al llamar StartSereviceByName para org.gtk.vfs.UDisks2VolumeMonitor: Se alcanzó el tiempo de expiración (g-io-error-quark, 24)

Una solución y una sorpresa.

Bueno pues este mensaje me dio un poco más de luz sobre el problema.Aunque para ser justos no les había mencionado un pequeñísimo detalle.

Uno de mis servidores falleció anteriormente y había estado muy ocupado mudando los servicios a un nuevo equipo. Una vez que relacioné mentalmente este evento y el mensaje de error fue como dí con la solución.

Lo que pasó es que murió el servidor y en mi computadora había declarado que se montaran automáticamente algunas carpetas de este servidor usando el archivo fstab.

¡Y ese era el problema!, que mi equipo intentaba encontrar esas carpetas del servidor sin éxito hasta que llegaba a el tiempo de expiración.

Una vez que comenté las líneas que relacionaban al servidor en el archivo fstab y reiniciar mi computadora todo regresó a la normalidad.

Y que bueno porque ya estaba considerando reinstalar Manjaro, sospechando de un problema de convivencia entre XFCE, Cinnamon y Gnome.

Al final no había problema alguno en mi computadora. Espero que este artículo le sirva a alguien, al menos para mirar en esta dirección y le ahorre algo de tiempo.

El diálogo de abrir o guardar archivo tarda mucho tiempo aparecer
Linuxman.

David Moreno: Thanks Debian

Dom, 08/01/2017 - 09:10

I sent this email to debian-private a few days ago, on the 10th anniversary of my Debian account creation:

Date: Fri, 14 Aug 2015 19:37:20 +0200 From: David Moreno To: debian-private@lists.debian.org Subject: Retiring from Debian User-Agent: Mutt/1.5.23 (2014-03-12) [-- PGP output follows (current time: Sun 23 Aug 2015 06:18:36 PM CEST) --] gpg: Signature made Fri 14 Aug 2015 07:37:20 PM CEST using RSA key ID 4DADEC2F gpg: Good signature from "David Moreno " gpg: aka "David Moreno " gpg: aka "David Moreno (1984-08-08) " [-- End of PGP output --] [-- The following data is signed --] Hi, Ten years ago today (2005-08-14) my account was created: https://nm.debian.org/public/person/damog Today, I don't feel like Debian represents me and neither do I represent the project anymore. I had tried over the last couple of years to retake my involvement but lack of motivation and time always got on the way, so the right thing to do for me is to officially retire and gtfo. I certainly learned a bunch from dozens of Debian people over these many years, and I'm nothing but grateful with all of them; I will for sure carry the project close to my heart — as I carry it with the Debian swirl I still have tattooed on my back ;) http://damog.net/blog/2005/06/29/debian-tattoo/ I have three packages left that have not been updated in forever and you can consider orphaned now: gcolor2, libperl6-say-perl and libxml-treepp-perl. With all best wishes, David Moreno. http://damog.net/ [-- End of signed data --]

I received a couple of questions about my decision here. I basically don’t feel like Debian represents my interests and neither do I represent the project – this doesn’t mean I don’t believe in free software, to the contrary. I think some of the best software advancements we’ve made as society are thanks to it. I don’t necessarily believe on how the project has evolved itself, whether that has been the right way, to regain relevancy and dominance, and if it’s remained primarily a way to feed dogmatism versus pragmatism. This is the perfect example of a tragic consequence. I was very happy to learn that the current Debian Conference being held in Germany got the highest attendance ever, hopefully that can be utilized in a significant and useful way.

Regardless, my contributions to Debian were never noteworthy so it’s also not that big of a deal. I just need to close cycles myself and move forward, and the ten year anniversary looked like a significant mark for that.

Poke me in case you wanna discuss some more. I’ll always be happy to. Specially over beer :)

Peace.

Octavio Alvarez: Codificación defensiva (era Re: Pleonasmos booleanos)

Vie, 06/01/2017 - 19:32

Cuidado con las vulnerabilidades.

En Pleonasmos Booleanos, publicación del excelente blog Developeando, del cual me considero un ávido seguidor, Mario nos sensibiliza sobre la legibilidad de código. Nos dice que al escribir código debemos tomar en cuenta que no solo escribimos para la maquina. Concuerdo con él.

Sin embargo, hay que considerar qué pasa cuando lo que parece que es código redundante, realmente no lo es. Qué pasa si tenemos este código:

function deboLanzarMisil(statusProhibicion) { result = false if (statusProhibicion == false) result = true; return result; }

y lo que parece código redundante se legibiliza así:

function deboLanzarMisil(statusProhibicion) { return !statusProhibicion; }

o incluso así:

function deboLanzarMisil(statusProhibicion) { if (!statusProhibicion) return true; return false; }

En ambos casos habríamos introducido una vulnerabilidad (o bueno, de bug para arriba) que se presenta cuando statusProhibicion es null. En el primer código:

> deboLanzarMisil(true) false > deboLanzarMisil(false) true > deboLanzarMisil(null) false

En ambos ejemplos de código legibilizado:

> deboLanzarMisil(true) false > deboLanzarMisil(false) true > deboLanzarMisil(null) true

El código que estoy usando como ejemplo de lo que es supuestamente ilegible en realidad sigue un patrón de programación defensivo o seguro. En esta técnica:

  1. Se inicializa una variable a un valor seguro o valor por defecto.
  2. Sólo se modifica el valor bajo validaciones estrictas.

Claro que, aún cuando el siguiente código sigue esta técnica, habría sido inseguro, pero eso es porque se violó la regla #2:

function deboLanzarMisil(statusProhibicion) { result = false if (!statusProhibicion) result = true; return result; }

El punto es que la única manera de corregir un potencialmente vulnerable return !x manteniendo la legibilidad hubiera sido usar más de una línea de código o invertir la lógica de la función.

El código que usa Mario para ejemplificar el caso de ilegibilidad resulta ser funcionalmente equivalente al código legibilizado y no son vulnerables ante una entrada null. Sin embargo consideremos los dos siguientes códigos, que no son funcionalmente equivalentes.

Este código es seguro:

function deboLanzarMisil(statusProhibicion) { if (statusProhibicion == false) return true; else return false; } > deboLanzarMisil(true) false > deboLanzarMisil(false) true > deboLanzarMisil(null) false

Este otro código, aparentemente equivalente, resulta inseguro ante una entrada null:

function deboLanzarMisil(statusProhibicion) { if (statusProhibicion == true) return false; else return true; } > deboLanzarMisil(true) false > deboLanzarMisil(false) true > deboLanzarMisil(null) true

Al final todo depende del lenguaje de programación. En SQL, por ejemplo, la lógica es distinta: NULL <> NULL da NULL y NULL == NULL da NULL.

En resumen, sí, hay que considerar que nuestro código será leído por otras personas o por nosotros mismos en el futuro (o por un violento psicópata que sabe dónde vives), pero recuerda que, en Javascript, x == false no es funcionalmente equivalente a !x.

Víctor Martínez: Algo muy grave va a suceder en este pueblo

Jue, 05/01/2017 - 15:14

En 2011 a raíz de los disturbios que hubo en varias partes del mundo [1]. [2], [3] y de la incertidumbre que hubo en el puerto de Veracruz [4], que posteriormente al siguiente año también pasaría en la ciudad de México siendo el conflicto realmente grave solo en Chimalhuacan [5], [6], agregue una lectura a mi curso, el siguiente cuento de Gabriel García Márquez, se sigue usando en clase y pensé que lo había colocado aquí y veo que no es así, lo coloco en este espacio para referencia rápida y para poderlo vincular, en momentos como hoy es importante recordar la necesidad de verificar el de donde viene la información, la leyenda dice que Sócrates tenía tres preguntas para evitar el rumor [7], me parece que provenga de él o no, son muy útiles hoy en día, por cierto he tomado el texto de acá [8] pero se ha movido varias veces con los cambios del sitio.

Dicho sea de paso, recopilar las fuentes del tema me han hecho pensar que vale la pena convertirlo en un material más estructurado, en la página del curso de hecho esta replicado ya que han cambiado muchos vínculos o desaparecido.

[Cuento – Texto completo.]

Imagínese usted un pueblo muy pequeño donde hay una señora vieja que tiene dos hijos, uno de 17 y una hija de 14. Está sirviéndoles el desayuno y tiene una expresión de preocupación. Los hijos le preguntan qué le pasa y ella les responde:
-No sé, pero he amanecido con el presentimiento de que algo muy grave va a sucederle a este pueblo.

Ellos se ríen de la madre. Dicen que esos son presentimientos de vieja, cosas que pasan. El hijo se va a jugar al billar, y en el momento en que va a tirar una carambola sencillísima, el otro jugador le dice:

-Te apuesto un peso a que no la haces.

Todos se ríen. Él se ríe. Tira la carambola y no la hace. Paga su peso y todos le preguntan qué pasó, si era una carambola sencilla. Contesta:

-Es cierto, pero me ha quedado la preocupación de una cosa que me dijo mi madre esta mañana sobre algo grave que va a suceder a este pueblo.

Todos se ríen de él, y el que se ha ganado su peso regresa a su casa, donde está con su mamá o una nieta o en fin, cualquier pariente. Feliz con su peso, dice:

-Le gané este peso a Dámaso en la forma más sencilla porque es un tonto.

-¿Y por qué es un tonto?

-Hombre, porque no pudo hacer una carambola sencillísima estorbado con la idea de que su mamá amaneció hoy con la idea de que algo muy grave va a suceder en este pueblo.

Entonces le dice su madre:

-No te burles de los presentimientos de los viejos porque a veces salen.

La pariente lo oye y va a comprar carne. Ella le dice al carnicero:

-Véndame una libra de carne -y en el momento que se la están cortando, agrega-: Mejor véndame dos, porque andan diciendo que algo grave va a pasar y lo mejor es estar preparado.

El carnicero despacha su carne y cuando llega otra señora a comprar una libra de carne, le dice:

-Lleve dos porque hasta aquí llega la gente diciendo que algo muy grave va a pasar, y se están preparando y comprando cosas.

Entonces la vieja responde:

-Tengo varios hijos, mire, mejor deme cuatro libras.

Se lleva las cuatro libras; y para no hacer largo el cuento, diré que el carnicero en media hora agota la carne, mata otra vaca, se vende toda y se va esparciendo el rumor. Llega el momento en que todo el mundo, en el pueblo, está esperando que pase algo. Se paralizan las actividades y de pronto, a las dos de la tarde, hace calor como siempre. Alguien dice:

-¿Se ha dado cuenta del calor que está haciendo?

-¡Pero si en este pueblo siempre ha hecho calor!

(Tanto calor que es pueblo donde los músicos tenían instrumentos remendados con brea y tocaban siempre a la sombra porque si tocaban al sol se les caían a pedazos.)

-Sin embargo -dice uno-, a esta hora nunca ha hecho tanto calor.

-Pero a las dos de la tarde es cuando hay más calor.

-Sí, pero no tanto calor como ahora.

Al pueblo desierto, a la plaza desierta, baja de pronto un pajarito y se corre la voz:

-Hay un pajarito en la plaza.

Y viene todo el mundo, espantado, a ver el pajarito.

-Pero señores, siempre ha habido pajaritos que bajan.

-Sí, pero nunca a esta hora.

Llega un momento de tal tensión para los habitantes del pueblo, que todos están desesperados por irse y no tienen el valor de hacerlo.

-Yo sí soy muy macho -grita uno-. Yo me voy.

Agarra sus muebles, sus hijos, sus animales, los mete en una carreta y atraviesa la calle central donde está el pobre pueblo viéndolo. Hasta el momento en que dicen:

-Si este se atreve, pues nosotros también nos vamos.

Y empiezan a desmantelar literalmente el pueblo. Se llevan las cosas, los animales, todo.

Y uno de los últimos que abandona el pueblo, dice:

-Que no venga la desgracia a caer sobre lo que queda de nuestra casa -y entonces la incendia y otros incendian también sus casas.

Huyen en un tremendo y verdadero pánico, como en un éxodo de guerra, y en medio de ellos va la señora que tuvo el presagio, clamando:

-Yo dije que algo muy grave iba a pasar, y me dijeron que estaba loca.

FIN

[1] http://www.jornada.unam.mx/2011/10/01/economia/023n1eco
[2] http://redaccion.nexos.com.mx/?p=3355
[3] http://redaccion.nexos.com.mx/?p=3400
[4] http://web.archive.org/web/20130403133637/http://www.imagendeveracruz.com.mx/vernota.php?id=99663
[5] http://www.eluniversalmas.com.mx/editoriales/2012/09/60356.php
[6] http://redaccion.nexos.com.mx/?p=4215
[7] http://www.academiasocrates.es/socrates/dialogo.php
[
8] http://ciudadseva.com/texto/algo-muy-grave-va-a-suceder-en-este-pueblo/

José Oviedo: Gparted: Error al iniciar, undefined symbol

Lun, 02/01/2017 - 09:35

Al ejecutar el comando gparted o gparted-pkexec arroja el siguiente error (también el programa gnome-system-monitor):

/usr/sbin/gpartedbin: symbol lookup error: /usr/lib/x86_64-linux-gnu/libgiomm-2.4.so.1: undefined symbol: _ZN4Glib11VariantTypeD1Ev

Al parecer el problema lo genera VMWare, pero para solucionar el error, seguir los siguientes pasos, todo como root.

Mover el archivo LD_LIBRARY_PATH.conf

sudo mv /etc/ld.so.conf.d/LD_LIBRARY_PATH.conf /etc/ld.so.conf.d/LD_LIBRARY_PATH.conf.bak

Después ejecutar:
sudo ldconfig

Y listo!!, asunto arreglado.

Gunnar Wolf: Giving up on the Drupal 8 debianization ☹

Lun, 26/12/2016 - 21:03

I am sad (but feel my duty) to inform the world that we will not be providing a Drupal 8 package in Debian.

I filed an Intent To Package bug a very long time ago, intending to ship it with Jessie; Drupal 8 was so deep a change that it took their community overly long to achieve and stabilize. Still, Drupal 8 was released over a year ago today.

I started working on debianizing the package shortly afterwards. There is also some online evidence – As my call for help sent through this same blog.

I have been too busy this last year. I let the packaging process lay dormant for too long, without even touching it for even half a year. Then, around September, I started working with the very nice guys of Indava, David and Enrique, and did very good advances. They clearly understood Debian's needs when it comes to full source inclusion (as D8 ships many minified Javascript libraries), attribution (as additionally to all those, many third-party PHP projects are bundled in the infamous vendor/ directory), and system-wide dependency management (as Drupal builds on some frameworks and libraries already available within Debian, chiefly Symfony, Doctrine, Twig... Even more, most of them appeared to work at the version levels we will be shipping, so all was dandy and for some weeks, I was quite optimistic on finishing the package on time and with the needed quality and testing. Yay!

But... Reality bites.

When I started testing my precious package... It broke in horrible ways. Uncomprehensible PHP errors (and I have to add here, I am a PHP newbie and am reluctant to learn better a language that strikes me as so inconsistent, so ugly), which we spent some time tackling... Of course, configuration changes are more than expected...

But, just as we Debianers learnt some important lessons after the way-too-long Sarge freeze (ten years ago, many among you won't remember those frustrating days), Drupal learnt as well. They changed their release strategy — Instead of describing it, those interested can read it at its source.

What it meant for me, sadly, is that this process does not align with the Debian maintenance model. This means: The Drupal API stays mostly-stable between 8.0.x, 8.1.x, 8.2.x, etc. However, Drupal will incorporate new versions of their bundled libraries. I understood the new versions would be incorporated at minor-level branches, but if I read correctly some of my errors, some dependencies change even at patch-level updates.

And... Well, if you update a PHP library, and the invoking PHP code (that is, Drupal) relies in this new version... Sadly, it makes it unmaintainable for Debian.

So, long story short: I have decided to drop Drupal8 support in Debian. Of course, if somebody wants to pick up the pieces, the Git repository is still there (although I do plan on erasing it in a couple of weeks, as it means useless waste of project resources otherwise), and you could probably even target unstable+backports in a weird way (as it's software that, given our constraints, shouldn't enter testing, at least during a freeze).

So... Sigh, a tear is dropped for every lost hour of work, and my depeest regrets to David and Enrique who put their work as well to make D8 happen in Debian. I will soon be closing the ITP and... Forgetting about the whole issue? ☹

Luis Armando Medina: Como Encontrar el Nombre y Versión del Controlador de Red en Linux

Lun, 26/12/2016 - 18:42
Para resolver algún problema de red es necesario conocer el nombre del controlador de red y la versión del driver de red. Para poder encontrar estos datos en Linux Existen varias formas. Ve en este post como puedes saber el … Continue reading →

Luis Armando Medina: Como instalar Redis en Ubuntu 16.04

Vie, 23/12/2016 - 11:20
Redis es una herramienta para agilizar el tiempo de respuesta de un sitio web cuando se está trabajando con sitios con muchas visitas. Redis es una base de datos en memoria un tanto particular y aquí vamos a ver como … Continue reading →

Luis Armando Medina: Linux Mint 18.1 Serena ha sido Anunciado Oficialmente

Vie, 16/12/2016 - 12:33
Para cerrar bien el 2016 se ha anunciado oficialmente el lanzamiendo de la versión final de Linux Mint 18.1 Serena en sus dos variantes con Cinnamon y MATE como entornos de escritorio. Linux Mint ha ido mejorando con el tiempo … Continue reading →

Luis Armando Medina: Centos 7-1611 ha Sido Anunciado y Está Listo para Descargar

Mar, 13/12/2016 - 16:37
Hace algunas semanas se anunciaba el lanzamiento de Red Hat Enterprice Linux 7.3 y como era de esperarse ahora tenemos disponible la nueva versión de Centos 7 que se construya a partir del código fuente de RHEL 7.3. Descarga la … Continue reading →

Luis Armando Medina: Como encontrar y borrar archivos con más de X días de Antigüedad

Jue, 08/12/2016 - 16:52
El comando find en Linux, uno de esos comando poco valorados aun cuando es no de los mas poderosos y flexible, tiene un gran cantidad de parámetros que dificultan su uso cuando uno es principiante, pero si lo sabes usar … Continue reading →

Páginas