martes, noviembre 16, 2010

El formato EPUB para publicar libros electrónicos

Después de investigar un poco en la web sobre los formatos en los que se están publicando los libros electrónicos, y de leer en la wiki http://en.wikipedia.org/wiki/Comparison_of_e-book_formats, me doy cuenta que los formatos más fuertes hoy día (2010-11-16) son el epub y el mobipocket


Recuerdo que tengo algunos libros en formato epub que baje la semana pasada, así que me doy a la tarea de investigar sobre el contenido del archivo, al mostrarlo con less veo la palabra zip, así que supongo que la extensión .epub es solo un adorno y en realidad se trata de un archivo .zip, cambio la extensión y luego extraigo el contenido con unzip, para ver que los archivos que contiene son en su mayoría XML, y que el libro esta descrito mediante los ya tan familiares XHTML y CSS lo cual es una grata sorpresa para mí que conozco estas tecnologías. Incluso el archivo de tabla de contenidos, es un XML bastante entendible.

En la wikipedia se puede encontrar más información respecto a este formato abierto, que Amazon todavía no soporta en el Kindle 3 http://en.wikipedia.org/wiki/EPUB

lunes, noviembre 01, 2010

Screen capture in linux, using ffmpeg

ffmpeg in ubuntu can be used in very simple way to capture directly from the X server in this way

TS=`date +%Y%m%d_%H%M`; ffmpeg -s 1024x600 -f x11grab -r 1 -i :0.0 -s 768x450 -vcodec flashsv sesion-$TS.flv

we indicate the original size (-s 1024x600) and the frame rate of grabbing (-r 1) that is and X grabbing (-f x11grab) the source screen (-i :0.0) and the desired video codec (-vcodec flashsv) o sea flashscreenvideo and the file format of the file container in this case flash video (.flv)

other example can be to obtain and avi using mpeg4 as video encoding

TS=`date +%Y%m%d_%H%M`; ffmpeg -s 1024x600 -f x11grab -r 1 -i :0.0 -s 768x450 sesion-$TS.avi

or using xvid codec

TS=`date +%Y%m%d_%H%M`; ffmpeg -s 1024x600 -f x11grab -r 1 -i :0.0 -s 768x450 -vcodec libxvid -aspect 16:9 -qmax 10 flashsv sesion-$TS.flv

we can omit the -qmax parameter or put a value between 2-31, 2 is the best quality

domingo, julio 04, 2010

como instalar java en ubuntu 10.04 10.4

para todos los que venimos usando el apt, sabemos que ejecutando un

sudo apt-get install APPNAME

es suficiente para instalar software, pero lo importante es conocer el nombre del paquete de software

en versiones anteriores de Ubuntu (8.04, 8.10, 9.04, 9.10) para instalar java el paquete que necesitabamos para el runtime era uno de estos:

* sun-java5-jre
* sun-java6-jre


y para el kit de desarrollo de software uno de estos dependiendo la versión que eligieramos:

* sun-java5-jdk
* sun-java6-jdk


Sin embargo en la version 10.04 decidieron cambiarle el nombre a los paquetes, debido a no se que razón y ahora se llaman respectivamente:

* openjdk-6-jre
* openjdk-6-jdk


Así que podemos instalar el entorno de ejecución de JAVA con:

sudo apt-get install openjdk-6-jre

y el entordo de desarrollo con:

sudo apt-get install openjdk-6-jdk

me pregunto, ¿de quien sera la grandiosa idea de cambiar los nombres a los paquetes?, deberían de dejar un alias con el mismo nombre que avise del nuevo nombre explicando la razón

espero esto les sea de utilidad

miércoles, mayo 05, 2010

¿como buscar archivos en los servicios de file sharing?

Pues aunque suene descabellado, ya hay un buscador especializado en dichos sitios, si conocen otros no olviden dejarlos en los comentarios para agregarlos.

http://www.filestube.com/

martes, mayo 04, 2010

ejemplo: superioridad de interfaz de texto sobre interfaz grafica

carajo, me borro todo lo que había escrito, el punto es que en la interfaz gráfica no detecta la partición como se ve aquí


mientras que si lo hace con la utilidad de linea de comandos como se ve acá

como mejorar el rendimiento de linux retrasando el uso de memoria virtual

hay una variable del kernel que nos permite indicarle el % (entre 0 y 100) de la tendencia del kernel al usar memoria virtual, para ver que valor tiene en nuestro sistema usamos este comando

cat /proc/sys/vm/swappiness
60

en mi caso tengo 60
para cambiarlo en la sesión de trabajo actual y ponerlo a 0

sudo sysctl vm.swappiness=0

para hacerlo permanente es necesario editar el archivo /etc/sysctl.conf
agregando la línea

vm.swappiness=0


salvamos y listo, la próxima vez que arranquemos esta variable sera 0 como podrán comprobar, en mi caso, al poner el valor en 0 ha mejorado considerablemente la responsividad de las aplicaciones

happy tunning

ALCANCE:

como todo, esta modificación tiene su lado negativo, y es que mientras se mejora el rendimiento mientras que aún hay memoria RAM libre, al retrasar el uso de swap hasta el final, cuando se agota la RAM, y es necesario hacer uso del fichero swap, el sistema se paraliza casi por completo mientras observamos como escribe turbadamente al disco duro, perdemos la respuesta del sistema por un buen rato (a mí me llego a pasar que hasta por 10 a 30 minutos), por lo que ya no recomiendo utilizar esta técnica

file sharing sites o como compartir archivos grandes

Problema:

necesito compartir un archivo grande con otra(s) personas, pero es muy grande para mandarlo por email

Solución:

en la red existe un buen número de sitios donde podemos subir archivos grandes (hasta de 50 a 200Mb) y nos genera un link con el cual poder compartir el archivo, dicho link es la única manera de acceder al archivo, es decir solo a quien le demos el link podra descargar el archivo

si el archivo rebasa el tamaña máximo, existen programas como el rar o el zip que permiten partir el archivo en varios trozos que posteriormente a ser descargados todos se pueden juntar

Sitios que ofrecen este servicio:

http://mediafire.com
http://rapidshare.com
http://depositfiles.com
http://socifiles.com
http://4shared.com

viernes, abril 30, 2010

microsoft discrimina, competencia desleal

Hoy (2010/04/30) es el evento de Microsoft titulado "Las tres pantallas y la nube", viene Steve Balmer de microsoft, curiosamente también aprovecha para comprometer al gobierno mexicano y seguir hacienda a México dependiente de sus tecnologías obsoletas , caras, monopólicas, excluyentes y enajenadoras

Es un gran cinismo de que hablen de elevar a México, pero solo estén dispuestos mientras puedan hacernos dependientes, por ejemplo presentan el sitio

http://www.elevemosmexico.org/

pero para variar solo lo pueden ver los que usan su tecnología, en este caso Silverlight, que es un intento por desplazar a flash que ya esta en uso en el 99% de los navegadores, sin embargo FLASH si brinda soporte para las diferentes plataformas ya sea linux, mac y obvio windows


así que no puedo ver que proponen porque me saca esto (click para ampliar), esto es la  forma moderna de discriminación, al igual que hacen las dependencias de gobierno y las páginas de los bancos donde si no uso Internet Explorer y windows, no se puede ver correctamente o no funciona correctamente, (me paso con la página de bancomer al tratar de imprimir mi constancia de intereses de crédito hipotecario):

¿porque microsoft no logra entender el concepto de interoperabilidad?

solo significa ser agnóstico en cuanto a la tecnología, por ej. a una carretera no le importa la marca del coche que tengamos, así debe ser con los portales de gobierno y comerciales, deben de dar acceso sin importar que navegador o sistema operativo usemos, solo de esta manera podemos cerrar la brecha digital y no comprometiendo el futuro del país con el uso de una solo tecnología propietaria que excluye y no sigue estándares para eliminar a la competencia, competencia desleal

martes, abril 27, 2010

windows, autorun y proclividad a la transmisión de virus

si queremos crear un medio extraible ( unidad usb, o cd, o dvd ) que cuando sea insertado en una máquina con windows, se ejecute un programa, acción o comando, es tan sencillo como colocar en la raíz del sistema de archivos de la unidad un archivo con nombre

autorun.inf

el cual debe contener lo siguiente:

[autorun]
open=RECYCLE\D-0-060-0000000000-1111111-2222222\venet.exe
icon=%SystemRoot%\system32\SHELL32.dll,4
action=Open folder to view files
shell\open=Open
shell\open\command=RECYCLE\D-0-060-0000000000-1111111-2222222\venet.exe
shell\open\default=1


como vemos este ejemplo lo tome de ejemplo de un virus que se colo en mi memoria usb, cuando fui a hacer la declaración al SAT y les di mi memoria para que usaran mi firma electrónica, en mi sistema ubuntu linux puedo meterlo con toda confianza, y ver que esos archivos que no estaban ahora aparecen, y no son otra cosa que un virus, también desde ubuntu puedo borrar el autorun.inf y la carpeta RECYCLED para limpiar la memoria del cochino virus

si buscamos en google venet.exe encontramos de que virus se trata y su comportamiento http://www.prevx.com/filenames/430314620930797656-X1/VENET.EXE.html muy perro por cierto

esto es una demostración más de lo poco fiable que son los sistemas operativos windows, ya que su diseñador, el tan conocido Bill Gates, penso, "el usuario es pendejo, para que complicarle la vida teniendo que abrir y ejecutar el contenido de los medios extraibles, no! mejor que se ejecuten solos cuando los inserte"

respecto a la sintaxis del autorun.inf
open se usa para especificar el comando que deseamos ejecutar
icon para indicar el path del icono que deseamos tener
action supongo que es para indicar en que acción se debe ejecutar
shell permite agregar elementos al menu contextual

para saber mas:

http://en.wikipedia.org/wiki/Autorun
http://es.wikipedia.org/wiki/Autorun
http://www.vsantivirus.com/inf-autorun.htm

jueves, abril 22, 2010

rsync y sus usos: sincronizar y respaldar archivos

rsync --archive --update --verbose --progress origen destino

origen y destino son las rutas de los archivos a copiar, pueden ser locales o remotos

para el caso de locales solo es el path absoluto o relativo

absoluto (comienza con /) ej:
/home/poncho/documentos

relativo (a donde estamos parados cuando damos el comando) ej:
documentos/tareas

para el caso le los remotos podemos especificar el usuario y el servidor de donde jalar los archivos ej:

poncho@www.google.com:/home/poncho

si el usuario es el mismo con el que estamos trabajando queda así:
www.google.com:/home/poncho

al ejecutar el comando el rsync compara que origen con el destino y copia todos los archivos que no están en el destino y los que han sido actualizados en el origen, y no hace nada si el archivo ya se encuentra en el destino, lo que permite replicar el origen en el destino

Como configurar apt para que utilice un proxy

añadir a
/etc/apt/apt.conf

lo siguiente:

ACQUIRE {
        http::proxy "http://192.168.2.100:3128/"
}

ajustar ip del proxy y puerto del proxy según sea necesario
si el proxy maneja autentificación quedaría "http://usuario:password@proxy_ip:port"

martes, abril 20, 2010

nota de configuración de DHCPd en DD-WRT

si en nuestra LAN tenemos un router linksys y hemos cambiado el sistema operativo por el fabuloso dd-wrt, y si tenemos activado como DHCP server el DNSMasq, pero queremos que el gateway no sea el linksys sino otro equipo en la LAN, tenemos que agregar en la pestaña de services > dnsmasq > aditional options

dhcp-option=lan,3,192.168.2.100

referencias:

http://www.linux.com/archive/articles/149040

hacking:
para averiguar que tiene que llevar lan, lo que hice fue mediante telnet conectarme el router, dado que no trae el comando ls, para poder ver que archivos hay en el sistema se puede usar echo * y para saber en que directorio estamos pwd


así podemos obtener el contenido del archivo /tmp/dnsmasq.conf

que contiene dicha linea "dhcp-option=lan,3,192.168.2.254"

después de hacer la modificación via la interface web, como se describe al inicio, si vemos el contenido de /tmp/dnsmasq.conf veremos que agrego al final la linea "dhcp-option=lan,3,192.168.2.100" lo cual nos permite especificar que gateway debe asignar el DHCP a los clientes