domingo, 27 de octubre de 2013

Congelado

No es una novedad que ya no mantengo este blog. No por falta de tiempo o de cosas qué poner. Dese hace mucho tiempo atrás me di cuenta que este blog fue perdiendo enfoque. Antes tenía mucho sentido por el estilo de vida que tenía; no es que fuera malo o que me arrepienta, es que he ido cambiando; pero no en el sentido de abandonar un ser por otro, sino en el de mejorar todo lo que soy.


No es que haya dejado atrás esta vida con lo underground corriendo por mi sangre, es que lo he mejorado.


Todo lo que este blog representa, el programador lidiando con su propio ser y su propia inteligencia a través de un código, en madrugadas demenciales pero adictivas; el científico haciéndose preguntas inimaginables, con respuestas desde lo más venidas de otro planeta hasta las más simples y que siempre estuvieron frente a mí, pero igualmente inimaginables, y que siempre desembocaron en una aventura por recorrer el camino que va desde la duda hasta la respuesta.


Todo eso sigue ahí... aquí.


Pero ahora lo proyecto de diferentes maneras. Y es por eso que no cancelo este blog, porque además de que la parte que aquí plasmo aún sigue con vida, solo que evolucionada, aún pienso en la posibilidad que hay de que en este blog ocurra algo más en el futuro. Nunca me ha parecido que este sea su final.


Pero mientras tanto, este blog quedará desconectado de mi perfil público, aunque lo dejaré accesible a nivel público. No estará cancelado ni olvidado, solo Congelado, junto con algunas otras ideas más, que solo esperan su tiempo.


martes, 31 de mayo de 2011

Primera indignación de Windows 7



Posiblemente a algunos ya le parezca normal algo como esto, pero para mí que estoy recién salido de Windows XP, 37GB de disco duro y 512 de RAM, me parece indignante que recién adquirida mi Laptop, el Windows 7 me salga con que necesito instalar un cuarto de Gigabyte de puras correcciones de Microsoft.

martes, 22 de marzo de 2011

¡Firefox 4!

Descargué Firefox 4, y no es solo porque es mi navegador favorito y predilecto desde que lo descubrí allá por el 2004, sino porque quise formar parte del contador de personas que lo descargaron las primeras 24 horas.

Mientras que Firefox 2, la sensación del momento de hace unos años, logró 2 millones de descargas en 24 horas y eso hizo eco en la red con gran sorpresa, ahora Firefox 2 se superó a sí mismo de forma magistral, logrando 1 millón de descargas en menos de 4 horas.

Hace ya unas 12 o 15 horas que se lanzó, pero estaba en la escuela y durmiendo. Hasta hace poco me enteré y quise probarlo.

Mozilla hizo una página especial para ver el avance de las descargas de Firefox 4: Estadísticas de descarga de Firefox 4.. Se puede ver en tiempo real la parte del mundo en donde se está descargando el programa y la cantidad de descargas que lleva, entre otras cosas.



Y bueno... ¡a probarlo!

domingo, 14 de marzo de 2010

Cómo extraño los tiempos en que no había Internet

Siento todavía nostalgia por aquellas épocas en que todavía no se había inventado el Internet, tiempos que recuerdo con gran cariño a pesar de que ni siquiera había nacido =(

Fuente original: El Economista.



Redes sociales alejan a jóvenes de la lectura


El guionista estadunidense Barry Gifford considera que el uso de nuevas tecnologías, como las redes sociales, ocasiona que los jóvenes se interesen menos por la lectura, sobre todo, por la buena literatura, llevándolos a un estatus de mediatización.

Gifford ofreció una plática magistral como parte de las actividades de Talent Campus Guadalajara, en el marco de la 25 edición del Festival de Cine de Guadalajara, ante un auditorio de más de 60 jóvenes estudiantes de comunicación, principalmente de cine, quienes cuestionaron al cineasta.

El guionista de películas como "Wild at heart" y "Perdita Durango", entre otras exitosas historias, reiteró que el abuso de herramientas como el Twitter y Facebook ya nos les da tiempo para pensar, "les está robando las ideas originales", dijo.

Gifford les recomendó no estar sentados todo el día frente a la computadora enfrascados en un duelo de a ver quién contesta con mayor rapidez lo que es obvio, les sugirió buscar otras manera de comunicarse y de pensar, pues dijo que hay muchos distractores, por lo que es necesario que no estén conectados las 24 horas.

Asimismo, les aconsejó que en el caso de los que escriben y hacen guiones, principalmente, se permitan libertades que no se sujeten a la mecanización, pues el hacer uso de la imaginación les dará mejores soluciones a la hora de crear historias.

El guionista enfatizó que nunca le ha gustado hacer las cosas por encargo, por eso probablemente ha podido hacer obras que han gustado.

Ya entrado en la charla, contó la anécdota de lo sucedido con "Perdita Durango", en la que inicialmente sería Bigas Luna, quien la dirigiera, pero luego de ser despedido fue Alex de la Iglesia quien enfrentó el reto: "El hizo una traducción literal del libro, pero yo no deseaba eso, yo aspiraba que fuera otra cosa, no que lo hiciera literalmente".

El escritor charló también sobre esa fascinación que ha tenido en relatar acontecimientos en los que aborda situaciones con temáticas fronterizas entre México y Estados Unidos. Muy a su estilo, Gifford describió esa fascinación que ha ejercido en él la cultura mexicana.

Comentó que esos viajes México-Estados Unidos y viceversa, en los que ha acumulado numerosos acontecimientos que más adelante le han servido para recrearlos en sus novelas, que ya son siete, en breve serán editadas todas juntas en un solo tomo.

Finalmente, dijo que tiene un nuevo proyecto sobre hechos relacionados con Cuba, titulado "Los viejos días", en el que intervendrá el actor Morgan Freeman.

BVC
FUENTE:

Notimex <-- Supongo que esta es "la fuente de la fuente".



Cómo extraño...
los tiempos en que no había Internet y todos los jóvenes del planeta se la pasaban en sus casas leyendo libros;
los tiempos en que no había Internet y no se podían hacer fotocopias de música o de libros.

Cuando no había Internet y nadie veía porno;
o cuando no había Internet y las estafas no existían.

También me acuerdo de aquellos... viejos tiempos... en que nadie tenía Internet y por lo tanto nadie robaba bancos ni mataba gente (Ver vídeo completo).

Pero afortunadamente contamos siempre con gente con conocimientos sobre el tema, y que saben cómo hacer y manejar las cosas para que nuestro barco valla con buen rumbo, gente como este guionista Barry Gifford que nos pone claro el motivo por el que los jóvenes no leen, o periodistas que se toman muy en serio sus fuentes y consultan a un guionista de cine para que nos instruya con su conocimiento y datos sobre la situación de los jóvenes de hoy, o el gobierno de China que mantiene a sus súbditos alejados del pecado y los demonios de occidente.

Bueno, yo aquí la corto, es muy tarde (1:03 am) y me tengo que ir a dormir... leí por ahí que tanta PC saca granos.

martes, 2 de marzo de 2010

Pseudo-intelectuales en su hábitat

Hace unos días andaba leyendo las noticias en Menéame y vi una noticia sobre afiladoes y varios comentarios. Inicialmente fui a husmear para averiguar qué podían comentar sobre afiladores, quizá sería interesante, ver si en España también tenían costumbres de hacer cosas como salir a quitarse la camisa cuando pasaran.

Me encontré con una conversación de talibanes ortográficos contra un usuario. Voy a dejar la conversación: recorté los comentarios que no venían al caso, es algo larga.

Antes de comenzar a leer advierto: el propósito de este post no es otro que el morbo social: mostrar el desagrado que siento y lo mal que me parece que va EL MUNDO (porque como digo, cada cosa es una representación a escala de otra cosa de mayor o menor orden) a través de mi indignación al ver algo. No suelo hacer posts de este tipo así que uno de vez en cuando no viene mal.



Lo penoso es que esta es una práctica habitual en Menéame, no por nada el usuario que se atrevió a denunciar al talibán quedó hundido a negativos en la mayoría de los casos.

En otro post ya he hablado de los pseudo-intelectuales y aquí hay una manifestación de su existencia y desplante.

Esta es la razón por la que dejé de visitar Menéame por un largo tiempo y por la que ahora solo leo las noticias (descartando la gran mayoría a partir de sus encabezados siempre de la misma temática) y solo en casos excepcionales como este, me voy a leer los comentarios.

viernes, 19 de febrero de 2010

¿Twitter o no Twitter?

Me lo he estado preguntando muchas veces desde que me enteré...

Cuando fue lo del boom de Twitter yo mismo me pregunté si debería tener uno, pero desde entonces hasta la fecha la respuesta siempre fue 'No'.

Al principio porque no me atraía el microblogging, luego por paranoias mías y después porque era tan masivo que había perdido atractivo para mí.

El microblogging, para colmo, me empezó a atraer justo hoy mismo =S; quiero decir, en la mañana no me gustaba y hoy hasta hace unas pocas horas ya siento atracción hacia el mismo. Y debo decir que hubo mucha influencia en el nacimiento de este nuevo gusto por parte de Google Buzz, ya que soy un admirador de lo que es Google, que soy positivamente receptivo a sus nuevas ideas.

He estado pensando en Buzzear en vez de Twittear, pero el inconveniente es como quien tiene ganas de socializar en una piscina y le dan a elegir entre una con mucha gente y calor, y una vacía y grande.

Google Buzz tampoco ha tenido mucha aceptación, y es que apenas hace unos días que acaba de salir y ha tenido muchas críticas negativas, apuntando a un posible fracaso por parte de un proyecto de Google, como lo fueron Orkut, Groups, Google Videos, etc.

Lo otro es que todo mundo está en Twitter y nadie parece si quiera voltear a ver a Buzz; he visto a nuestro presidente Felipe Calderón, a Andrés Manuel López Obrador, a la consultora de modas Stacy London, entre otros.

De modo que, aunque sigue sin parecerme atractivo Twitter, si quiero entrar al mundo del microblogging tengo que estar aquí, o esperar unos meses a ver cómo avanza el Buzz, pero para ser francos no tengo fe en que llegue lejos.

Buzz tiene una opción para conectar Twitter con él mismo, es decir, que linkeando mi cuenta en Twitter, los twits que yo haga se publicarán también en Buzz. La idea es buena, lo malo es que a mí no me gusta ni desenvolverme en cosas incompletas ni andar usando dos servicios para hacer lo mismo... ¡dos veces! Porque si twitteo, solo podré escribir unas líneas de código... ¡código!, quiero decir, escribir unas líneas de lo que sea (vaya, ¡lo que me ha hecho la programación!), pero en Google puedo linkear al Buzz con picasa, con Reader, con Calendar creo que también, y con muchos servicios de Google, para que se agreguen Buzzes automáticos cada vez que realice una acción en ellos, lo que me parece genial para el uso que le pienso dar a Buzz, y no puedo hacer eso desde Twitter (y no, no da estar actualizando el Twit cada vez que lleve acabo alguna acción de esas, es más práctico que se incluyan automáticamente).

Todavía lo seguiré pensando; tal vez sí me haga una cuenta Twitter y una de Buzz, a pesar de que ninguna me convence del todo, la una por no gustarme y la otra por parecer ir hacia el olvido.

domingo, 20 de diciembre de 2009

Aprendiendo a usar la RAE Online

Resumen del post:

Aprender a consultar una palabra en menos de 5 segundos usando la página oficial de la RAE. Teclear

rae CualquierPalabra

para encontrar el significado de CualquierPalabra.


Torrente de datos:

RAE: Real Academia Española.
Página Oficial: http://www.rae.es
Sitio en Wikipedia: http://es.wikipedia.org/wiki/Real_Academia_Española

Función: Organismo oficial encargado de definir los términos válidos en el idioma español.

Vistazo general:

Al entrar a la página oficial de la RAE veremos un menú y dos buscadores: Diccionario de la lengua< española y Diccionario panhispánico de dudas. Para consultar un término usaremos el primero. El resto del contenido y menús no se abarca aquí y queda a su exploración.

Facilitando el acceso a la RAE

Esto solo está probado en Mozilla Firefox. Para navegadores como Chrome, Safari o Internet Explorer serán procesos similares.


Muchos de nosotros (a veces formo parte de este grupo) tenemos flojera de coger un diccionario y buscar entre sus centenas de páginas para encontrar una palabra que desconocemos, e incluso si el diccionario está cerca a veces la pereza es tan sorprendente que nos hace olvidarnos del tema antes que buscar.

Podemos usar la opción de marcadores de Mozilla Firefox para acceder a la definición oficial de una palabra en menos de 5 segundos (o 10 para los que escriben con los dedos índices como piquitos de pollo).

Recordar que el diccionario que usamos es el Diccionario de la lengua española, y no el Panhispánico de dudas.

Veámoslo explicado:

Para buscar la palabra "desertar", la tecleamos en el cuadro de búsqueda y nos llevará a esta URL:

http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=desertar

Lo que hacemos es guardarla en nuestros marcadores, haciendo click en el menú Marcadores y luego "Agregar esta página a marcadores". En seguida nos aparecerá un cuadro rápido, pero como este cuadro no nos deja manipular el marcador enteramente, simplemente le damos "Terminar".

Después vamos a Marcadores, tipeamos "Organizar marcadores" y en el cuadro de gestión de marcadores que nos aparecerá iremos a "Menú marcadores":



Nos aparecerá nuestra lista de marcadores. Buscaremos el que acabamos de agregar que aparecerá hasta abajo y lo seleccionamos. En la parte inferior veremos una zona con los datos de nuestro marcador. Hacemos click en "Mas" para ver todos.

En el cuadro de Nombre, le damos un nombre para reconocerla en el menú marcadores. Esto no es trivial para el uso que le daremos al marcador ya que no lo buscaremos ni haremos ningún click, solo sirve para reconocerlo dentro de nuestra lista de marcadores.

En la dirección, reemplazamos el texto de búsqueda por la directiva %s

esto

http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=desertar

queda así:

http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=%s

En "Etiquetas" supongo que irá la taxonomía de los marcadores, yo nunca las uso =S

La palabra clave es clave xD, es la que usaremos al momento de tipear el acceso rápido al navegar. Yo uso "rae" porque es lo más lógico y convencional, y a la vez algo simple, corto y descriptivo.

La descripción es opcional y no sé dónde podemos visualizarla; siéntanse libres de ponerla o dejar el campo en blanco. Yo suelo poner una aunque sea corta, solo por complemento.

Al final nos debe quedar algo así, pero con los datos que ustedes han puesto:



Los datos se van guardando y actualizando al momento en que se cambian, así que no hace falta presionar ningún botón "Guardar".


Hasta aquí ya tenemos todo terminado. Para probarlo, abriremos una nueva pestaña y en el cuadro de las URL ponemos ejemplos:

rae desertar
rae cangrejo
rae abducción



Herramientas

En algunas páginas podemos encontrar dos botones, uno azul y uno rojo: Conjugar y Artículo enmendado.



Conjugar nos conduce a una tabla con las conjugaciones del verbo en todos los tiempos, e incluye las diferencias de conjugación que hay entre España, Argentina y el resto de Habla Hispana.

Artículo enmendado nos lleva a la versión nueva del término. Ahora mismo estamos en la Vigésima segunda edición (22a), y lo que veremos es un avance de la 23a. Pero ojo, se llama "avance" porque será oficial, pero aún no lo es, y el término de la 22a puede que vaya a cambiar, pero aún es considerado válido.


Notas y observaciones finales.


  • Es "case insensitive", es decir, que no distingue mayúsculas de minúsculas, por lo que tipear "rae desertar", "Rae DeSertAR" y "RAE DESERTAR" conducirán al mismo resultado.


  • Presionar Ctrl+T para abrir una nueva pestaña hace más rápido el proceso. Se pueden configurar las teclas de acceso en Firefox (Zorra de fuego) por otras.


  • Toma tiempo acostumbrarse, pero con un poco de práctica haremos un buen hábito en nuestra navegación, consultando cualquier palabra en menos de 5 segundos, por lo que los pretextos para escribir como Hoygan acab... disminuyeron.


  • En lo personal, para mí da mal aspecto andar citando a la RAE cada rato para darse la razón. Cuando en una discusión veo que los users se empiezan a quotear y a citar a la RAE para hacer aclaraciones en sus argumentos, es signo de que la discusión ya terminó.




Para cerrar

Un enlace, dentro de la misma RAE, a los hábitos lingüísticos y dudas que muchos de nosotros tenemos y la contestación oficial de la RAE aclarando si son correctos o no.

Ejemplos:

¿Es correcto decir "no vino nadie" en lugar de "no vino alguien"? (doble negación)
¿Se dice "ir por alguien" o "ir a por alguien"?
¿"lo vi ayer" o "le vi ayer"?
¿"los miles de personas" o "las miles de personas"?
¿"chiquillos y chiquillas"?



Fin.

domingo, 29 de noviembre de 2009

Nota rápida: Espacios de nombres en XML

Los espacios de nombres (namespaces) sirven para definir un conjunto de palabras clave en determinada situación (en este caso, dentro de XML). Así, un nodo en XML que se defina <table> sin un espacio de nombres es un nodo cualquiera, pero si usa el espacio de nombres de HTML, indica el inicio de una tabla, y de igual forma si creamos un espacio de nombres propio y lo definimos en un archivo aparte, podemos hacer que signifique lo que queramos.

Ahora mismo estoy diseñando un portal web del que no voy a hablar porque es un proyecto confidencial, y entender lo que voy a explicar me tomó al menos 2 semanas descubrirlo por mí mismo, porque en Internet no encontré suficiente información.

El planteamiento es este: tenemos una web basada en AJAX y queremos que al presionar un botón "Action!" (que es como llamo a mis botones cuando ando testeando algo y necesito un nombre rápido, corto y preciso) aparezca en determinado lugar (ya sea una celda de una tabla, un Div o en medio de un párrafo) cierto código con formato, pongamos de ejemplo que queremos crear un <strong>Holaa!</strong>.

Lo que se les vendrá a la cabeza a algunos es crearlo con la función createElement() del DOM y anexarlo, pero hay que recordar que es un ejemplo, ya que el bloque de código que yo necesito anexar es muy largo y dinámico como para crear una función de JavScript que maneje todos los cambios. De hecho lo creo con una función en PHP que precisamente quiero reutilizar para el caso.

Tenemos ya dos condiciones iniciales: usar la función en PHP que ya dispongo en lugar adaptar una en JavaScript, y que la creación del bloque se haga al instante, sin recargar la página. Hay una tercera condición: no usar innerHTML().

¿Por qué no usar innerHTML()? Por cuatro razones:


  • No es un estándar de la W3C, y yo programo siguiendo estándares porque me parece un excelente trabajo el que están haciendo los chicos del consorcio por la red, y definitivamente pienso respetarlo.

  • No funciona en algunos agentes de usuaio. Al ser propiedad de Microsoft, es posible que haya navegadores que no lo soporten y existan problemas al momento de crear aplicaciones AJAX, y francamente no están obligados a soportarlo.

  • Dentro de poco quedará obsoleto. A pesar de que hay algunos navegadores que lo soportan además del Internet Explorer, la estandarización de la web está orillando a esta función a desaparecer; en el futuro los lenguajes basados en XML (como el mismo XML y XHTML, por ejemplo) no lo reconocerán y no darán soporte a él, delegando su uso solo a los programadores quisquillosos que por alguna noble causa insisten en programar doble código para hacer sus sitios compatibles con todos los navegadores.

  • Otorga poca flexibilidad. innerHTML() es una función que agrega una cadena de texto al código. A diferencia de hace más de una década, el código HTML de una web no es solo un texto que se va leyendo e interpretando, sino que ahora los navegadores cuentan con una interfaz llamada DOM que jerarquiza los elementos de una página web y brinda una API para acceder a ellos (DOM es la API) y manipularlos, permitiendo la creación, modificación y borrado de elementos de una manera muy organizada y práctica. innerHTML inyecta un pedazo de texto para ser leído, pero al ser un String no se anexa al DOM y no podrá ser modificado por su API. Hasta ahora no sé si vaya a necesitar modificar el DOM del bloque de código que estoy anexando pero aún así volvemos al punto uno: me manejo con estándares.



Ya que no vamos a usar innerHTML(), solo nos queda una forma de hacerlo: la correcta: usando appendChild().

Queda así:

abrimos una conexión asincrónica con el servidor y nos preparamos para intercambiar los datos. Después de leer detenidamente sobre los métodos de acceso al servidor y evaluar las necesitades del módulo que estoy programando, decido que GET es la mejor opción:

var Connection = new XMLHttpRequest();
var DatosRecibidos;
const DONE = 4;

function CrearConexion(){
var Connection = new XMLHttpRequest();
Connection.open("GET", "Respuesta.php");
Connection.onreadystatechange = ManipularDatos;
Connection.send();
}

function ManipularDatos(){
if (Connection.readyState == DONE){
DatosRecibidos = Connection.responseXML;
var ItemCell = document.getElementById("MiCelda");

//Si tiene contenido, se lo borramos
if (ItemCell.firstChild) ItemCell.removeChild(ItemCell.firstChild);

//Aquí anexamos
ItemCell.appendChild(DatosRecibidos.childNodes[0]);
}


Lo que en teoría hace esta función es justo lo que necesitamos: conecta correctamente al servidor, accede a la página que genera el bloque de código que necesitamos incluir, lo descarga y lo incluye al código fuente dinámico, es decir que ir a "Ver / Ver código fuente de esta página" no nos conduce a nada, porque nos muestra el código que se generó al cargar la página, pero no contiene el código que se ha creado dinámicamente; para eso tenemos que seleccionar el pedazo de página y con el click derecho escoger "Ver código fuente de esta selección".

Allí podremos ver el bloque de código de la página con el código anexado, pero el pedazo que agregamos estará sin formato. Podemos ver etiquetas de negrita, cursiva, subrayado, texto de colores y al voltear a la página web veremos que en efecto, el texto está formateado. Pero cuando nos ponemos a observar el código que generamos dinámicamente, por más que tenga etiquetas strong, span, div, table, tr/td, lo que se visualizará en el navegador será texto plano sin formato.

Me estuve preguntando más de 2 semanas ¿por qué? y ¿cómo resolverlo? Leí por varios lados pero no encontré nada útil, pues resulta que todos andan usando innerHTML().

Despueś de leer un manual de XML con buena información y hacer docenas de experimentos con mi código en JavaScript, caí en que era cuestión del espacio de nombres de XML.

Para poder anexar código usando appendChild() en lugar de innerHTML() debemos obtener la información con responseXML() en lugar de responseText(), como lo pueden ver en mi código, pero para que responseXML nos devuelva un objeto con la información XML transformada en DOM, la información debe ser un documento XML (es decir, NO texto plano, no HTML, sino XML) que previamente lo debimos haber especificado en PHP con header("Content-Type: text/xml");.

Al recibir información XML, el User Agent la incluyó en el DOM como información XML y ocurrió lo que hablé iniciando el post: las etiquetas table, div, td, etc. que tenía mi código no contaban con un espacio de nombres definido, por lo que para el parser eran etiquetas que yo me había inventado. Se veían en mi código fuente dinámico como si fueran de HTML pero lo cierto es que venían en calidad de visitantes... extranjeros que habían ingresado con pasaporte y VISA.

Una vez que me di cuenta de ello, me tomé unos minutos para re checar en el manual de XML que había leído la correcta inclusión de namespaces. De modo que para que un código pueda ser bien recibido y formateado, debe pasar de un simple:

<strong>Holaa!</strong>


a un estructurado:

<?xml version="1.0" encoding="UTF-8" ?>
<strong xmlns="http://www.w3.org/1999/xhtml">Holaa</strong>


Allí está el espacio de nombres indicado.


Hice este post porque no vi que esto se aclare en ningún manual, espeificación, foro o blog hasta donde consulté, y es un dolor de cabeza no tener idea de qué, quién, por qué, por dónde o por cuándo. Si alguien conoce una manera más sencilla de hacer esta transacción y que siga los estándares, no dude en postear.

sábado, 21 de febrero de 2009

my.cnf

Otro de mis recordatorios para Mai hese kú héleeeeee!"#!"#Sdadsadasdd

Este texto es un extracto de la documentación de MySQL que da una breve explicación del archivo my.cnf, el cual es el archivo de configuración de MySQL (un homónimo de my.ini en windows o algo así). Básicamente es un archivo de configuración.

Fuen....teh!

15.3. Configuración de InnoDB




¿Dónde deben especificarse las opciones en Unix? En Unix, mysqld lee las opciones en los siguientes ficheros, si existen, en el siguiente orden:

  • /etc/my.cnf Opciones globales.

  • $MYSQL_HOME/my.cnf Opciones específicas del servidor.

  • defaults-extra-file El fichero especificado con la opción --defaults-extra-file.

  • ~/.my.cnf Opciones específicas del usuario.


MYSQL_HOME representa una variable de entorno la cual contiene la ruta al directorio que hospeda al fichero específico de servidor my.cnf.

Si se desea estar seguro de que mysqld lee sus opciones únicamente desde un fichero determinado, se puede emplear --defaults-option como la primera opción en la línea de comandos cuando se inicia el servidor:

mysqld --defaults-file=ruta_a_my_cnf



"Te llevaré a donde quieras ir
a una galaxia lejos de aquí
donde ninguno te encontrará
rumbo a la inmensidad"

Mijares


Ahí lo pruebo mañana que ya tengo que dormir.

jueves, 11 de septiembre de 2008

Nota al pie (instalando MySQL)

El error me dio cuando quise instalar la distribución binaria de MySQL 5.1 en mi máquina Linux específicamente mysql-5.1.26-rc-linux-i686-glibc23 (cambiando a la 5.0 todo vuelve a la normalidad). Hace uno

# mysql_install_db --user=mysql


y obtiene

Installing MySQL system tables...
ERROR: 1062 Duplicate entry 'localhost-' for key 'PRIMARY'
080911 18:32:40 [ERROR] Aborting

080911 18:32:40 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete


Installation of system tables failed! Examine the logs in
./data for more information.


Fui a la carpeta data como me dijo pero los dos logs que contenía estaban vacíos. Busqué en google ese error de distintas formas hasta que la búsqueda "mysql_install_db" "ERROR: 1062" "Duplicate entry" "for key" me llevó a esta página donde se expone una solución.

Resulta que esta versión al ejecutar el archivo de instalación de scripts (el mysql_install_db anteriormente mencionado) llena la tabla de permisos (GRANT table) y crea 2 usuarios iniciales:

'root'@'localhost'
'root'@<nombre-del-servidor>


el problema es para servidores caseros como el mío donde el nombre del host es el mismo localhost (oséase 127.0.0.1), entonces intenta crear dos usuarios iguales y salta este error.

La solución es cambiar el nombre del host para que haga dos distintos. Eso resulta ser algo complicado pero existe (en Linux) un comando llamado hostname que cambia el nombre del host temporalmente (al volver a inicial Linux nuevamente tendríamos localhost como nombre pero ya no importa mientras la base esté instalada). Así pues lo único que hay que hacer es tipear (como root):

# hostname loquesea


Nuevamente se reintenta la ejecución de mysql_install_db y el resultado es este:

WARNING: The host 'NekroLinux' could not be looked up with resolveip.
This probably means that your libc libraries are not 100 % compatible
with this binary MySQL version. The MySQL daemon, mysqld, should work
normally with the exception that host name resolving will not work.
This means that you should use IP addresses instead of hostnames
when specifying MySQL privileges !

Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h NekroLinux password 'new-password'


Alternatively you can run:
/usr/local/mysql/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

See the manual for more instructions.


Esta es solo una ADVERTENCIA, no un mensaje de error; su objetivo es informar al BOFH para que lo tenga presente. Se puede evitar poniendo una dirección válida, yo puse www.google.com.mx y no me mostró la advertencia.

Y aquí la prueba de los dos usuarios que ha creado para acceder a la base de datos.

Para los que crean que lo único que hice fue traducir lo que contiene la otra página déjenme decirles que están muy equivocados... también requiere su esfuerzo mental parafrasear lo que el autor dijo >:-(




[Horas después ¬¬]

Funcionó pero ocasiona otro error:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)


Y aquí una página propone una solución:

ARREGLAR ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Lo probé y al hacer SELECT * FROM cualquiertabla; comprobé que tengo la base de datos vacía ¬¬. Esto me hace acordar a eso que dicen que es la definición de un informático: Es alguien que resuelve problemas que nadie sabía que existían, nadie entiende y a nadie le importa ¬¬

Voy poniendo esto por si le sirve a alguien más de ayuda pero lo cierto es que ya me está llevando la santa verga y creo que le voy a dar delete a todo ¬¬




[Como una hora después]

Fue, lo voy a borrar! Me cargó ya! Fuera no me importa si tengo que cambiarle medio código fuente a MySQL pero no vuelvo a esa versión!

Grrr!!!!

lunes, 8 de septiembre de 2008

Recordatorios de MySQL

Listo, no sé qué cosas he cambiado desde "Recordatorios" pero ahora el asunto es así:

Tengo primero que plantarme como root en la shell para que al correr los comandos se puedan crear y modificar archivos que están en directorios en los que no tengo acceso ni de lectura como usuario normal. Una vez logueado como root escribo:

Iniciando el servidor primero
# mysql.server start

Cosa que me debe retornar:
Starting MySQL SUCCESS!

Luego me logueo ("root" por ejemplo"):
mysql --user=root -p

Después de teclear la contraseña me debería mandar su mensaje de bienvenida y darme la shell de MySQL:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.37 MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>


Explico algunas cosas: creé enlaces simbólicos en /usr/local/bin a los archivos: mysql, mysql.server y mysqld_safe para evitarme el trabajo de cambiar de directorio lo cuál me da mucha pereza.

Como dije en el post anterior de "Recordatorios": "Cada vez que uso MySQL después de dejarla en el abandono durante un buen tiempo suceden problemas, no sé por qué".

En realidad es obvio que se debe a mi novatez y a mi poca frecuencia con esa base de datos, pero las nubes son muy hermosas.

viernes, 1 de agosto de 2008

Reconfiguración de Apache

Por motivos del SVN y otras cosas tuve que volver a instalar Apache para agregar unos módulos que no venían por defecto y dejarlos como librerías compartidas .so. Aquí no hay nada nuevo, sólo recordatorios por si algún día los necesito y se me olvida.

Bueno, mi configuración de PHP:

./configure
--prefix=/mnt/NekroLinux/Tjener/PHP
--with-apxs2=/usr/local/apache2/bin/apxs
--enable-force-cgi-redirect
--enable-discard-path
--enable-fastcgi
--enable-calendar
--enable-ftp
--with-mysql-dir=/usr/local/mysql
--with-zlib-dir=‎/usr/lib/libz.so.1.2.'


Nota: Sería bueno crear un enlace simbólico en el directorio de instalación por defecto y linkearlo con la carpeta de Tjener.

Nota2: Es la página que despliega <?php phpinfo(); ?> así que se puede obtener cuando se desee.


configure de Apache (alias httpd):

./configure --prefix=/usr/local/apache2 --with-dav --enable-dav --enable-dav-fs --with-included-apr --enable-mods-shared='dav ssl' --enable-ssl

Nota: En el directorio /build dentro de la carpeta de residencia de Apache (donde se instaló, NO el source) está el script config.nice que tiene estos datos.

Nota:
--with-dav --enable-dav --enable-dav-fs es para instalar WebDAV.
--with-included-apr fuerza a que se sobreescriban las librerías apr (creo que también apu) si es que ya existen; ideal para hacer upgrades.
--enable-mods-shared='dav dav_fs ssl'Hace que los módulos module_dav, module_dav_fs y module_ssl se compilen como librerías compartidas para ser cargados con LoadModule, guardados en el subdirectorio /modules
--enable-ssl habilita protocolo SSL. El mismo configure se encarga de buscar un cliente SSL que por defecto es OpenSSL en Linux, si no lo llega a encontrar se especifica con ---with-ssl=DIR

Nota: En la página de Apache existe un apartado describiendo los parámetros del configure. >Click aquí<


Actualmente Apache no me está dando problemas, simplemente ./configure && make && make install y lo tenemos funcionando de vuelta con los módulos nuevos.




Modificar estado del servidor.

Hay que estar logueado como root de lo contrario tirará este error:

(13)Permission denied: make_sock: could not bind to address [::]:80
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs


El binario para controlar el estado es apachectl y usualmente se encuentra en APACHEDIR/bin, si la carpeta por defecto existe (sea como directorio o enlace simbólico) la ruta puede ser /usr/local/apache2/bin/ para localizar al apachectl.

De cualquier forma es necesario hacer un cd hasta la ubicación y luego lanzar el binario. Se puede evitar eso haciendo un enlace simbólico en /usr/bin o /usr/local/bin (preferentemente la última) así:

cd /usr/local/bin
ln -s DIRECTORIODELAPACHE/bin/apachectl


como root. De esta forma lo único que hay que hacer es invocar apachectl desde cualquier lugar sin necesidad de pasarse a su respectivo directorio.

El simple programa despliega el mensaje de ayuda explicando sus parámetros; para controlar el estado del servidor hay que lanzarlo dependiendo de lo que se quiera hacer:

Iniciar Servidor - apachectl -k start
Detener Servidor - apachectl -k stop
Reiniciar Servidor - apachectl -k restart

Existen otras opciones para detenerlo o reiniciarlo de forma segura (graceful) para que avise a otros programas que lo usen que se va a detener/reiniciar. Usar apachectl --help y Google para enterarse.

Sin embargo algo que he visto es que la -k le es indiferente al programa, puesto que apachectl start/stop/restart hacen bien su trabajo y son los que estoy usando ahora.




Hice otro recordatorio como este pero para mySQL: Recordatorios.

TEST234890342890234

Negrita
Itálica
Subrayado
Strike
Todas LOL

miércoles, 30 de julio de 2008

KDESVN - Holy shEt!

Mieerrrddaaa.... mieeerrrdaaa!! =O

Anterior: KDESVN -Si ya no ven más posts es que ya quedó

4:24 am del miércoles

Lo cuento desde el inicio, osea, desde que dejé de postear la vez pasada, me salto las partes de comer, ver tele, irme a botar a la cama a pensar, ver cosas en internet, etc.

Había decidido modificar la variable LD_LIBRARY_PATH y me fui a Googlear para ver qué opinaba la comunidad, me encontré con esta página: When should I set LD_LIBRARY_PATH?. El usuario recomendaba que no lo hiciéramos porque no me acuerdo qué (en serio, me duele la cabeza y lo que menos quiero es pensar), me convenció y aborté el proceso, el comando export no sé por qué pero nunca me gustó y desde el principio lo mandé a la mierda.

Bueno, habrá que volver a reinstalar KDESVN y pero de forma tal que queden las librerías en /usr/lib y no en /usr/local/lib. Me voy a ver los archivos del código fuente que respectan a la instalación: CMakeLists.txt, README, TODO, etc a ver qué dicen, veo cosas pero nada es lo que busco. Voy a la comunidad y me paso como 1 hora entera leyendo a los usuarios que tenían el problema de las librerías compartidas en /usr/local/lib para ver cómo le hicieron pero nada satisfactorio, luego busco a ver si hay prefijos o alguna forma de instalar las librerías del chunche este.

No encuentro nada, por fin digo "Daaa, a la mierda!, lo voy a instalar como estaba y buscarle alguna solución, algún archivo config que apunte a las librerías o veré qué" así que instalo el KDESVN nuevamente, me aparecen varios errores y cuando los veo noto la tremenda parida que hice...

Primero contaré la parida, que para ese entonces a mí me pareció de lo más normal y es la que les conté en el poth pasado: no encuentra las librerías, pues modifiqué ID_LIBRARY_PATH y andó. Luego para volver a instalar borré las librerías para que no me mandara confirmaciones de archivos existentes o errores de duplicados, lo que sea, habré puesto algo como rm libsvn*, eso bastó. Y si son observadores como no lo fui yo, habrán visto el error. Lindo yo presionando Y - [Enter] repetidas veces.

El error que vi al volver a instalar KDESVN fue: bla bla bla puto gay gil, no se pudo encontrar X librería de SVN, error en línea cien mil millones.

8^|

8^U

8^|______________________)

Bueno ya ya, toca instalar SVN otra vez, a ver si no me da problemas porque fue el que más lata me dio, me puse a leer su INSTALL largo a ver si recordaba hasta que leí en una zona:

$ ./configure
$ make
# make install


Ah bueno pues. Tipeo. Carga, hace mamadas, todo listo.

-No sé qué problema me compliqué al inicio.

Volví a instalar KDESVN:

cmake ../ #estaba en $CODIGOFUENTE/build como lo recomendaban
make
make install


Fin. Luego lo probé para encontrarme con lo obvio, las librerías que no encontraba porque SVN era todo instalación local y KDESVN mitad local mitad mierda. Googleé otro buen rato a ver si se podía solucionar el problema (sería capaz de volver a hacer las instalaciones) pero no hubo nada.

Con toda la furia me puse a hacer enlaces simbólicos en /usr/lib que apuntaran a /usr/local/lib, pero específicamente las librerías que pedía y no encontraba: libsvn*.so.0, de a una en una porque no quería arriesgarme a hacerme un script que las fuera recopilando, la iba a cagar seguramente porque sólo lo leí una vez hace como 4 días mientras leía los libros de Linux que tengo en casa pero nunca lo he practicado; ("no es momento para experimentar" pensé). Además no eran muchos archivos.

Bien, los puse, todo bien, ejecuté el bendito programa ese (sólo accedía como root cuado iba a operar con archivos en carpetas protegidas, lo otro era mi user normal) y arrancó como lo mostré en la captura pasada.

Me decidí a testearlo, fui a la página de ArcEmu para ver si sabía cómo bajar el emulador para ponerlo aquí, clickeo en el enlace de 'SVN' y de pronto me voy acordando de la otra gran parida:


8^|

8^U

8^|______________________)


Recordé que no hasta ahora no había logrado jugar WoW en Linux (por eso me fui varios meses a Windows y dejé abandonado esto y decidí leer cosas de Linux antes de continuar); bueno... sólo lo he intentado como 2 veces jajaja con el wine, pero me marca bastantes errores en la terminal relacionados con OpenGL y el juego se inicia pero parpadea como 10 veces por segundo así que lo cierro.

Aparentemente esto puede estar bien porque ni siquiera se necesita poder jugar al WoW para tener instalado el servidor, creo que con tener las bases de datos y scripts basta. Peeeero, ¿cómo lo testeo?, ¿cómo me conecto?, ¿cómo joraca inicio en Windows y Linux a la vez?

No le puedo pedir a alguien que testee desde otra máquina porque mi servidor es local, no pude vincularlo a internet cuando lo hice (con duckip, ipduck, algo así, de ips y patitos).

Y eso es lo que me ando cuestionando ahora, ¿cómo lo hago?

Tengo dos opciones: O busco la forma de que mi servidor sea accesible desde la red y me consigo otra compu con WoW...

O busco la forma de amigar a Linux con el WoW y probarlo en mi mismo servidor, que esto tendría muchísima más ventaja ya que lo puedo testear a mi gusto, interpretar los errores que voy viendo, leer los logs y repararlo ahí mismo sin andar preguntando por chat: "aja pero cómo era la ventanita, qué te decía exactamente?", "ya se arregló, fíjate", "[zumbido]", "--X No se pudo entregar el mensaje...". Otra cosa es que tendría exactamente cero lag por estar en la máquina local (supongo que tendrán implementados sistemas para evitar que viaje hasta la puta madre y regrese a la misma Pc (al menos X11 sí lo tiene)).

Hay otra tercera bien rancia: Plantarle dinamita a todo esto, reiniciar la Pc y descargar visor SVN para Windows y poner mis .exe en la carpetita C:. Y claro, no faltaba, descargar e instalar Apache, PHP, mySQL, recordando que la otra vez los instalé pero inexplicablemente ninguno funcionó.

Diosss! me pregunto si alguien leerá esto, es una larga palabrería de cosas que a nadie le interesan, quizá ni a mí si quiera. En fin, no sé ni por qué lo escribo.

Tampoco sé qué coño hacer, creo que voy a acabar preguntándole a los GMs de WoWArg :'(

martes, 29 de julio de 2008

KDESVN - Si ya no ven más posts es que ya quedó

Anterior: KDESVN - Avances, pistas, quizá lo logremos

8:15 - Una semana después, nuevamente es martes

Y bueh, ya vi el error, era el que me temía.

Vi que no encontraba una librería, obviamente supuse que no era porque no estuviera, era porque no buscaba en los lugares adecuados. Me dije que varios de los errores que había tenido seguro se debían a mi falta de práctica con Linux, ya que aunque lo tengo instalado, hace tiempo que no venía para aca, así que me puse a leer los tres libros que tengo en mi casa impresos de PDFs que algún día descargué para aprender sobre librerías pero no traían nada útil, pero eso sí, recibí una buena retroalimentación.

Sabía que eran librerías y sabía que eran librerías compartidas, pero no tenía idea del tema de las librerías, ni sabía la diferencia entre librerías estáticas y dinámicas así que fui de visita con el tío Google y me anduve leyendo varios enlaces hasta que finalmente logré comprenderlo.

Los programas que usan librerías compartidas suelen hacer su búsqueda consecutivamente en estos lugares:


  • Variable LD_LIBRARY_PATH

  • Fichero ld.so.cache

  • En /usr/lib y /lib


Pero todas las librerías de KDESvn estaban instaladas en /usr/local/lib. No entiendo por qué no estaba incluida esta ruta si no es arbitraria, por el contrario me suena de lo más lógico buscar en /usr/local ya sean binarios, librerías, manpages, sources o lo que sea. Quizá fue algún detalle al compilar, quizá debí poner algún parámetro --lib-src='/usr/local/lib' o algo por el estilo.

Mi variable LD_LIBRARY_PATH no trae nada, el echo lo arroja en blanco, así que la modifiqué y lancé:






Ya está el programa, eso era lo único que faltaba. No lo he probado así que no puedo saber si me tirará otro error inesperado.

Now, las variables que acabo de redefinir sólo es local, en cuanto cierre el bash volverá a quedar en blanco, si ejecuto el KDESvn desde otro bash en este momento, no servirá. Tengo tres opciones para hacer consistente la variable: usar el comando export, modificar los archivos que están en mi carpeta $HOME (no me gusta cómo suena porque significa que por cada usuario que cree o si lo lanzo desde el usuario root no hará efecto) y la tercera, la más tentadora, crear un enlace simbólico a /usr/local/lib en /usr/lib.

En todo lo que me detuve a ver tele terminé de decidirlo, me logeo como root y pongo: ordeno un ln -s

martes, 22 de julio de 2008

KDESVN - Avances, pistas, quizá lo logremos

Anterior: KDESVN - Más pistas

1:44 pm

Fui a la dirección que me indicaba el log de error:

CMake Error at src/svnqt/cmakemodules/FindSubversion.cmake:53


El número de línea es lo de menos, ya lo había visto, es sólo la parte en que te dice "Necesito apr". Sin embargo veo estas líneas:

FIND_PROGRAM(APR_CONFIG NAMES apr-config apr-1-config
  PATHS
  /usr/local/apr/bin
)

FIND_PROGRAM(APU_CONFIG NAMES apu-config apu-1-config
  PATHS
  /usr/local/apr/bin
)

if(NOT APR_CONFIG)
  MESSAGE(SEND_ERROR "Error: no apr-config found")
endif(NOT APR_CONFIG)

if(NOT APU_CONFIG)
  MESSAGE(SEND_ERROR "Error: no apu-config found")
endif(NOT APU_CONFIG)


Esto me dice que el archivo puede llamarse apr-conf o apr-1-conf, lo mismo con el otro, y que la ruta en donde busca es otra que ni al caso, la voy a modificar y voy a volver a iniciar a ver qué pasa, le pondré la ruta en donde encontré los míos, en el folder /bin de apache.

1:58

No lo cambiaré, simplemente agregaré otra línea abajo, si leo que dice PATHS es porque la siguiente es una lista de rutas, y quién sabe, prefiero no borrarlo, quizá algún día cambie la carpeta o algo y me olvide de ese detalle rompiéndome la cabeza. Agregaré el directorio abajo.

2:01 pm

Ahora me apareció otro mensaje:

CMake Warning (dev) at CMakeLists.txt:50 (ADD_DEFINITIONS):
Policy CMP0005 is not set: Preprocessor definition values are now escaped
automatically. Run "cmake --help-policy CMP0005" for policy details. Use
the cmake_policy command to set the policy and suppress this warning.
This warning is for project developers. Use -Wno-dev to suppress it.


Y el que me aparecía la otra vez que lo consideré inocente, y que de hecho lo es, pero CMake no quiere errores :^D

CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as

cmake_minimum_required(VERSION 2.6)

should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.


No tiene un par de tabulaciones que aparecen para verse mejor pero no lo corregiré. Voy a ponerme a cavilar aquí mismo y ver qué hago.

2:08

Voy a enloqueceeerrr!!!!!

Seguí intuiciones, había otro mensaje que no mostré porque tampoco había visto, era uno un poco más completo que involucraba librerías, pero decía que "bla bla bla [ERROR QUE MOSTRÉ PRIMERO] o [ERROR QUE MOSTRÉ DESPUÉS]" Así que me dije, quizá sea la línea de versión que CMake me pide que agregue. Pues fui a ver qué pasaba, agregué:

#Aquí agrego esto porque me lo pide al compilar
cmake_minimum_required(VERSION 2.6)


al inicio del archivo CMakeLists.txt que estaba en mi código fuente de KDESVN, lo guardé y volví a hacer CMake ../,, voilà!



Sin un solo puto error. Ahora voy a hacer maque maque instál!

Hay un error al 6% de compilación:

/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/svnqt/client_property.cpp:148: warning: unused parameter ‘revision’
/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/svnqt/client_property.cpp:169: warning: unused parameter ‘revision’


Pero sigue avanzando, veré qué pasa. Ahh, más arriba, terminando el 5% hubo uno igual pero con abs_path.

67% y otro error con mime_type y prop_state.

71% y

/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/svnfrontend/fronthelpers/propertylist.cpp: In member function ‘virtual void Propertylist::displayList(const svn::PathPropertiesMapListPtr&, bool, const QString&)’:
/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/svnfrontend/fronthelpers/propertylist.cpp:68: warning: unused variable ‘ki’
.

73% y otro parecido al anterior con label_text

90%.... nada xD

94 por ciento:

/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/kiosvn/kiolistener.cpp:279: warning: unused parameter ‘acceptedFailures’
/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/kiosvn/kiolistener.cpp:350: warning: unused parameter ‘password’
/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/kiosvn/kiolistener.cpp:350: warning: unused parameter ‘realm’
/mnt/NekroLinux/Software/SVN/KDESVN/kdesvn-0.14.4/src/kiosvn/kiolistener.cpp:350: warning: unused parameter ‘maySave’


asdf

[100%] Built target doc


Sigo con make install (jaja ni reparé en los errores ahi que me diga luego):

Terminó rápido, aparentemente no me mostró nada, sólo hizo notas del 1 al 100% rápido y luego líneas de "installing RUTA" sin error alguno. De hecho el último mensaje fue:

-- Installing: /usr/local/share/man/man1/kdesvnaskpass.1


y luego me devolvió al prompt. Voy a ejecutar el software a ver qué pasa.

¿Cómo coño lo ejecuto? Voy a leer por ahi a ver qué me dicen los README o algo.

Me apareció un error al ejecutar el binario kdesvn:

Could not find our part:
libsvnqt.so.4: cannot open shared object file: No such file or directory


y este error salió en un cuadrito, como los MsgBox() de Windows, le doy click al único botón que hay y me manda a una ventanita en blanco chiquita que dice 'kdesvn' en el título.

Hay otro binario, kdesvnaskpass que me pide una contraseña, y lo que ponga lo refleja en el output de la consola y luego no pasa nada.

Voy a acostarme y me voy a bañar después. Quizá sueñe con la respuesta :-/

A ver cómo sale este post porque con las cosas que pego o si se me olvidó cerrar una etiqueta (edito en modo HTML) va a salir todo mal.

Dos treinta y cuatro.

KDESVN - Más pistas

Anterior: Seguimos con KDESVN, me cago en apu-conf

12:13 pm

¿Qué creen? Que me he quedado dormido! No fue involuntario, fue premeditado, quería dormir, me acosté y me relajé, desperté hace como 10 o 15 minutos y volví a las andadas. Terminé de leer el artículo del blog pero no encontré en mi drakconf los repositorios que él indicaba, así que busqué "apr-conf" y "apu-conf" en Google además del error que me mandaba, es decir, lo mismo pero con "not found" añadido; sólo encontré 3 resultados que ya había visto antes.

Me acordé del post que había leído en el blog y decidí buscar apr- en mis repositorios a ver qué tenía. Resultado:



¡Eso es una pista! Me puse a buscar en /lib dentro del directorio del Apache que instalé alguna vez y encontré varios archivos apr, pero no eran lo que deseaba, me pasé a /bin y:



Aún no sé qué puede significar eso: si librerías o ejecutables, ¿y qué hace ese -1 allí? Creo que voy a irme a dormir otro rato, o cuando menos a acostarme, aún tengo algo de sueño.

12:23

Seguimos con KDESVN, me cago en apu-conf

Respecto al post inmediatamente anterior: Cosas Paranormales con SVN os digo que apenas tipeé o como se escriba "cmake ../", hizo varios chequeos y salió esto:



CREO que el aviso no es al compilar, sino por el compilador. Había dicho recientemente que al compilar me tiraba diversos mensajes, pero no necesriamente de error, por eso me abstuve de decir "me mandaba errores". Ya que algunos eran porque faltaba X componente, no se reconocía tal cosa, que la versión no sé qué. Y ahora es eso, algo confuso pero creo que inocente.

Aparentemente el compilador me trata de decir "Hey, creo que hay que agregar por ahí una línea para que me identifique y ver si todo mola piolamente" (algo 'que mola' en no me acuerdo qué país, es algo que 'está re piola' en Argentina).

Al final dice "Configuring Done", así que procedo a volver a compilar de nuevo, solo que ahora escondiendo ese mensaje "for project developers".

Eran como las 5:40 cuando comencé a escribir, y hace poco a las 5:53 después de eliminar ese mensajillo de sonly por developerdores vi otros, pero no son nuevos; se trata de errores que igualmente habían aparecido hace unos minutos y volvieron a aparecer, esta vez son errores que hay. Son los mismos errores que me hicieron desertar la otra vez y largarme a Windows a jugar WoW: apr-config y apu-config, cómo olvidar esas palabras.



Podría buscar en Google esos mensajes de error como lo hice la otra vez, o podría seguir adelante para ver qué pasa. Sin embargo, justo ahora, a las 6:02 am me estoy adjudicando una cuestión:

-Entonces ya había instalado KDESVN, uhmmm, se supone que me había liado porque no podía instalar el SVN y por lo tanto no seguí con el KDESVN para no seguir revolviendo más esto, pero el error es el mismo, ¿será que anteriormente había dado por instalado el SVN y había continuado con KDESVN, o es que... me está saliendo el mismo error en KDESVN que en SVN? lo que implicaría que el detalle no está en el compilador.


Y sigue mi pensamiento en tiempo real:

-No, creo que el CMake está bien instalado, según el screen la fuente de los errores está en el archivo CMakeLists.txt que es el que usa CMake para hacer sus configuraciones, ¡diablos! no recuerdo lo que hice la última vez.


Le voy a dar make make install a ver qué sale >:-( (impulsivo el chico).

3 segundos después...

Bueh...! le di make y me salió esto:

make: *** No targets specified and no makefile found. Stop.


Creo que no es fácil deducirlo: el Cmake encontró errores y no creó el makefile para no cagarla: abortó la misión. Creo que tendré que solucionar esos errores del apr-config y apu-config. ¿Era 'config' o 'conf'? No me acuerdo y no quiero ver arriba, voy a seguir leyendo el blog que mencioné al principio del post pasado, ahí viene algo sobre Mandriva y el drakconf.

6:10 am Cambio y fuera!

Changos no le puse título a esto...

(pensando en título)

(título sumamente original puesto).

6:11 cambio y fuera!

Cosas paranormales con SVN

LRPTMQTRMP! No sé qué diablos ocurrió X<

Quiero montar un cerber de WoW basado en ArcEmu, para eso tenía que instalar KDESVN (comodidad), pero para eso había que tener instalado SVN primero, además de CMake y el código del Kernel de Linux, para tener instalado CMake no sé qué...

La verdad me encanta hacer mucho drama, porque este no es el punto, sólo lo digo para que vean la cruz que vengo cargando, ya que averiguar todo eso e instalarlo me llevó varias horas de pensar y aprender (conocí CMake, un proyecto genial para compilar, entre otras cosas).

Yendo al grano: me encontraba compilando SVN, bajado de tu página oficial. Ya en el archivo README que contenía bastantes letras me decían con algo de ahinco que la compilación del SVN es más adecuada para mantenimiento del sistema, indicaban lo que se debía hacer para compilar dependiendo de varias cosas, de si era servidor o cliente, configurar el apache en caso de tenerlo y no sé qué más, era demasiado.

Me aventuré a ver qué salía, me salieron bastantes mensajes y después de rato de intentarlo y meterme a ponerle un par de líneas al apache acabé reiniciando y pasándome a Windows a jugar al WoW :^D

Ahora vuelvo, me aburrí de jugar, me da pereza levelear al pj, así que decido tomarme unas vacaciones de 2 o 3 días (voy por el segundo) y como no tenía nada mejor que hacer dije "voy a instalar el SVN... la puta madre... voy a bajarle los binarios y que se instale solo", así que le logueé, fui a la página y busqué los RPM para Mandriva. Lo que temí en desde que me acordé que uso Mandriva: que no haya binarios para este SO.

Me puse a leer y cavilar en una u otra cosa, como que si servirá instalar un pack de RedHat, o maldiciendo que hay hasta para Ubuntu, que bueno, por ahora es la versión pop y debe tener todo y ser compatible con todo.

Luego seguí leyendo en un blog que encontré al teclear sin comishas "instalar SVN Mandriva"; específicamente el enlace es este: http://lusac-miguel.blogspot.com/2008/06/subversion-en-mandriva-linux.html

se le conoce también como svn por ser el nombre de la herramienta de línea de comandos.


y de pronto me acordé que alguna vez había tecleado algo parecido a svn que me había dado sugerencia de que tenía el SVN instalado en mi Pc. Pensaba:

"claaaaro!: recuerdo que una vez tecleé svn o algo así en la línea de comandos y me habían salido unas cosas en la consola, que yo dije 'es svn'... pero después quise comprobar directamente en la línea de comandos si lo tenía y me marcó que no... nunca entendí si realmente lo tengo o fue una confusión. Tantas madres instalé junto con Mandriva que seguramente me instaló eso tan popular".

Más o menos así fue la reconstrucción de lo que pensé, ya que todo es líquido y electricidad, aparte había imágenes mezcladas entre eso mientras pensaba.

Entonces fui, probé en konsole tecleando 'svn' a ver qué salía y tuve su output



Oh My Fucking God!

Había obtenido respuesta!, eso significaba que la consola había reconocido el comando, lo que implicaba la existencia de un binario svn en Mandriva. Proseguí a tipear --jelp para ver qué salía...



¡ESA pantalla de comandos! La reconocí en el primer momento que la vi: volví a recordar que anteriormente había tecleado algo que me hizo saber que tenía al SVN metido en Mandriva; pero por alguna razón tecleé después cosas para ver si ya tenía el SVN instalado y acabé concluyendo que no. Quizá teclée SVN con mayúsculas en na línea de comandos o alguna otra cosa. Seguía confundido.

Con un poco de observación se puede notar que las letras de mi Konsole son las mismas que traigo en el blog: tipo, color y quizá hasta el tamaño. Personalicé mi konsole para que quedara más juanker y luego mi blog para que luciera ams Consóleh.

Volviendo al tema, KDESvn pide SVN 1.5.0 o superior para jalar así que comprobé la versión del mío con --version:



Peeeeero... hay un detalle:

Compiled Jul 13 2008, 00:02:23


¿Y adivinen qué fecha tiene esto: 22 de Julio del 2008, tiene 9 días aquella fecha, un tiempo que no resulta muy exagerado si repasamos lo que dije de que me había fastidiado de los errores que me dio al compilar la otra vez, puesto que sólo me tomé unos días en Windows jugando WoW y al aburrirme de siempre lo mismo decidí continuar.

Es aquí donde volvemos al inicio del post:

-La Re Puta Madre Que Te Re Mil Parió!! >_<
...What The Fuck!
...Me cago en Dios!


¿Qué fue lo que hice? o quizá, ¿qué fue lo que pasó?

Es como si hubiera compilado el código bien y ahora tuviera el SVN, pero por otra parte esa pantalla se me hace conocida, como la que vi al tipear al dope 'svn' en mi consola, mucho antes de enterarme de la existencia del KDESvn. Sin embargo recuerdo que dejé de compilar porque el compilador me tiraba mensajes y me decía que no se había podido llevar con éxito la compilación. Y ahora que recuerdo, veáaamoss...

(consultando)

Ah, no, la versión más reciente que tiene ahora la página esa de Tigris es svn 1.5.0, y los programas generalmente no son tan culeros, así que la versión mínima requerida no puede ser esa

(consultando)

ya está, en INSTALL-cmake, un archivo dentro del source del SVN viene

You require at least cmake 2.4, kde 3.4.x and subversion 1.2.


Subversion 1.2

Eso no me quita mi duda: ¿qué ondas? (xD vaya duda). ¿Por qué tengo un serio deja-vu (sí, sin acentos >:-( ) de esa palabra y me aparece que fue compilado hace 9 días, justo en la madrugada que es cuando me estaba rompiendo los sesos igual que ahora (son 5:10 am).

No sé qué más agregar, ahora voy a instalar KDESvn para ver con qué putada me sale ahora, porque ténganlo por seguro: aunque ya tenga KDE, CMake y SVN instalados, e incluso con versiones más recientes, ALGO me va a tirar, ALGO va a salir mal, y eso es con lo que voy a lidiar ahora... ¿o después de dormir? Son 5:13 am

jueves, 24 de abril de 2008

Make Love, Not Warcraft

Me la paso jugando al WoW, es UNA de las razones por las que no he publicado, las cosas para nada han quedado olvidadas, esto se aleja mucho de ser un proyecto muerto, sólo necesito... llegar al nivel 70... conseguir los tiers de las instancias... [temblando-la-cabeza]... mantener el dominio de la Cuenca de Arathi... hacer cenizas a la horda!

De momento estoy jugando en un servidor argentino: WoWArg (el realm es wowarg.comandogp.com.ar), es blizzlike, Ascent, población de entre 300 y 400 usuarios en línea (a veces hasta 480) de los cuales aproximadamente un 45% es horda y un 54% alianza. Tiene sus bugs y kastra cuando acabas de realizar algo que te costó mucho trabajo conseguir o estás en una estancia y se congela la pantalla para ¡pum!: "Te has desconectado del servidor". Pero pues bueno, si tuviera un buen flujo de dinero ya me hubiera pagado uno en el oficial.

¿Qué es el WoW? South Park explica perfectamente lo que me paso haciendo casi todo el día entero, el audio es español, no sé si de Latinoamérica pero es el que suena en México:


Make Love, Not Warcraft



Parte 1
Click aquí para ir a su página en YouTube y de paso darle al botón de Pantalla completa.


Parte 2
Lo mismo de arriba.


Parte 3
Idem


Parte 4
Idem


Parte 5
Idem





Sin palabras.