HTDj!

Ayer estuve de nuevo en la radio y pudí compartir estudio con daax, el creador de un patch de puredata (con lo completito que es, mas bien un programa con puredata!). Aquí el archivo del podcast.

Pude ver al creador en vivo usando su creación. ¡Impresionante!

El HTDj! es un interfaz de producción de música electrónica. Te permite cargar loops, canciones y otros patchs creados con pure data que reproduzcan música sintetizada.

Tiene distintas entradas las cuales de pueden activar con las teclas de función, de la F1 a la F11, la tecla F12 sirve para reproducir o parar la secuencia.

Para instalar el HTDj! primero será necesario instalar el pd-extended (puredata extendido), el cual es una versión extendida del puredata, la cual ya contiene todas las librerías para usar el puredata para tratar flujos de audio y video entre otros.

Para ello cargaremos en nuestro sources.list los repositorios de puredata

# vi /etc/apt/sources.list
#puredata
deb http://apt.puredata.info/releases testing main

Una vez echo esto actualizaremos la lista de repositorios y instalaremos el pd-extended

# apt-get update && apt-get install pd-extended

Nota: si estáis usando debian testing lo mas probable es que no encuentre libmpeg1, el cual es una dependencia de pd-extended, para ello lo descargaremos de aquí.

a continuación lo instalaremos manualmente:

# dpkg -i libmpeg1*.deb

Cuando lo tengamos instalado nos descargaremos el HTDj! de la página web del creador.

http://noconventions.mobi/arrel/HTDj!__vX__unauthorized.zip

Lo descomprimimos en algun directorio

# unzip HTDj!__vX__unauthorized.zip && cd HTDj!

Ahora será necesario realizar unas modificaciones …

Hacktivismo, Licencias y demás mandangas

Lo se lo se, llevo unos días sin postear, así que hoy voy a hacer un post autoreflexivo y un poco autobiográfico sobre hacktivismo, licencias de software, licencias de contenidos y todas las mandangas que las rodean. Tomad asiento que esto va por largo ;)

Hace cerca de 10 años entró en mi casa mi primera grabadora de CDs, fui la primera persona en mi entorno en tener una, tenía la necesidad de grabar en algún soporte externo todo lo que me descargaba de la red gracias al napster y mas tarde al WinMX. Pronto empecé a tener un numero considerable de CDs que tenía que organizar para no tener datos duplicados, así que creé una hoja de excel primero con álbumes de música y mas tarde con películas las cuales tardaba semanas enteras a descargar con mi conexión de 56kb.


Mis amigos empezaban a pedirme copias de mi música ya que era inviable comprarse todos los discos originales de sus grupos favoritos, así que ellos me daban un CD (aún sin canon) y yo les grababa gratuitamente mis discos y películas descargados con sudor de la red (aún recuerdo las tardes animando al transfer rate que como mucho llegaba a los 7Kb/s o 11Kb/s los días de sol y una climatología agradable).

Sabía que copiando aquella música un autor dejaba de vender un disco, que quizás muchos de aquellos que tenían una copia “pirata” descargada de internet no hubieran comprado pero aún así asistían a sus conciertos cuando tocaban …

bash + crontab + mt

[boceto no comprobado]Os dejo con este boceto porqué sé que hay algunos de vosotros que estáis siguiendo de cerca la evolución de mi script en dialog (prometo un post chulísimo cuando lo tenga un poquito mas experimentado).

——-

Llevo unos días peleándome con un script de bash que cuando lo ejecuto con crontab no funciona, he hecho varias pruebas pero ninguna me ha funcionado, así que he empezado a leer a ver si a alguien mas le pasaba esto, y efectivamente no es una cosa que sólo me pase a mi, así que os voy a contar dentro de mis conocimientos lo qué sucede.

posible solución 1:
Nuestro script está escrito para correr bajo bash, la shell por defecto de linux, si hacemos un

# echo $SHELL
/bin/bash

pero qué pasa si esto mismo lo hacemos en crontab? pues que nos devolverá /bin/sh

estas pequeñas diferencias hacen que el comportamiento de los scripts sea un poquito distinto, y que por ejemplo tar no funcione como esperamos.

Para ello debemos añadir una linea en /etc/crontab que sea así:

SHELL=/bin/bash

Mantendremos la parte de arriba intacta, dejando la de abajo para los scripts de bash y arriba para los de sh.

Posible solución 2:Si esto no funciona, quizás sea un problema de permisos de acceso del usuario que está ejecutando el script en cron.

Tenemos derechos encima de ficheros, pero también encima de dispositivos, estos segundos se pueden controlar desde el udev

bpun Blackhold, check if /dev/st0 is accessible.. if its an …

compilar kernel 2.6.29

Después del anuncio de ayer del tuz, al llegar a casa no me pude estar de probar de compilar el kernel 2.6.29 en mi debian squeeze.

Siempre que te pones a compilar un kernel sientes cierta emoción por el posible logro o un kernel panic que te impide a continuar, por suerte grub permite elegir con qué kernel iniciar tu sistema, por ejemplo, si no nos arranca el kernel nuevo, vamos a /boot/grub/menu.lst y borramos las lineas que cargan el kernel nuevo para que no lo cargue por defecto, además de borrar los ficheros initrd.img-numerokernel, System.map-numerokernel y vmlinuz-numerokernel de /boot. Sabiendo esto podemos estar tranquilos a la hora de compilar kernels, ya que es una acción facilmente reversible :)

Una de las pijaditas que he activado para este kernel es el framebuffer, para tener a un par de tuz guardianes al momento que arrancamos la máquina:

Aquí tenéis a mi sistema arrancando con el kernel 2.6.29 esta mañana :)

Para realizar la compilación he ido un poco a saco y he compilado directamente las sources que me he descargado de kernel.org

Así que vamos a empezar:

1. nos descargamos los sources de kernel.org, nos descargaremos el paquete full (F)
http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.29.tar.bz2

2. a continuación comprobamos que tenemos los siguientes paquetes instalados:

# apt-get install build-essential libncurses5 libncurses-dev

build-essential: para que podamos usar las herramientas de desarrollador que nos permitirán recompilar el kernel
libncurses5: lo vamos a necesitar para poder mostrar interfaces ncurses (make menuconfig)…

3. copiamos el fichero descargado de la …

tuz

Tuz es el nombre de la mascota de la versión 2.6.29 del kernel de linux, durante un ciclo el logo del proyecto se convertirá en un simpático demonio de tazmania con un pico de pinguino.

El motivo del cambio temporal de logo es para concienciar a la gente de la posible extinción de este simpático animal australiano.

Tuz apareció por primera vez como mascota de la edición de este año de la conferencia linux.conf.au, celebrada en Hobart, Tasmania.

Al llegar a casa, Linus Torvalds decidió hacer un acto de consciencia y cambiar temporalmente el logo del kernel de Linux.

Realizando backups en cinta

Esta tarde estaba en el trabajo jugueteando con una unidad de cinta que he instalado en una de las sucursales, como estamos en crisis tenemos que trabajar con lo que tenemos y esto permite recuperar viejos cacharros que tenemos guardados en el armario, uno de ellos es una unidad de cinta, una dell powervault 110T con cintas LTO3, que permiten un almacenamiento de 200Gb, 400Gb comprimidas.

la imágen no tiene nada que ver con la unidad de cinta ni las LTO3, pero es chulísima :D

Primero de todo tenemos que contar que una cinta guarda los datos de forma lineal, para que os hagáis una idea, si editamos hexadecimalmente un disco duro, podremos ver que toda la información está ahí metida, pero es poco probable que el mismo fichero se encuentre todo entero en un conjunto de sectores seguidos, así que la forma de acceder a los datos de una cinta no será como acceder a un CD o stick usb, trataremos la cinta como un archivo de datos, en el caso de este post, como un .tar.

Así que vamos a contar un poco las herramientas que usamos en GNU/Linux para realizar backups en unidades de cinta.

Primero de todo tenemos los comandos mt y st.

st servirá para gestionar el brazo robótico (en el caso que tengamos uno), como no tenemos uno sólo lo menciono y os recomiendo hacer un man st para poder leer sus posibilidades.

mt sirve para gestionar todas las acciones de la unidad de …

Linux POSIX Capabilities

He encontrado este interesante post por la red, así que comparto con vosotros este magnífico texto sacado de securitybydefault:

http://www.securitybydefault.com/2008/09/linux-posix-capabilities.html

El mundo GNU y específicamente su proyecto estrella Linux, están de enhorabuena, acaban de cumplir 25 años


Para sumarnos a esa celebración, voy a escribir un poco sobre un aspecto de seguridad en Linux que no parece demasiado difundido y que puede resultar interesante de cara a securizar sistemas Linux.

Me refiero a las POSIX capabilities. Antes de entrar en materia, contextualizare un poco sobre que son y porque nos pueden ser útiles.

En un sistema Unix, hay una serie de restricciones (lógicas) a la hora de hacer cierto tipo de cosas que requieren privilegios especiales (ser root) esto supone que, enviar RAW SOCKETS, o abrir un puerto por debajo de 1024 son tareas absolutamente imposibles de hacer para un usuario normal. Esta restricción es evidentemente necesaria, pero supone otro problema, tal vez yo necesite que un usuario normal haga SOLO una tarea que requiera privilegios de root y no deseo darle ‘todo el poder’.

Rápidamente muchos habrán caído en que, si es solo una tarea, un comando, puedo poner ese comando en modo set-uid para que se ejecute con privilegios de root. Pero esto no soluciona el problema, por ejemplo, si yo necesito abrir el puerto 200, hacer que un comando se ejecute como root supone, colateralmente, darle acceso a /etc/shadow, ¿Yo quiero hacer esto? No, obviamente.

Para eso están las POSIX capabilities que permiten asociar funcionalidades de

Upgradear de Lenny a Squeeze

Hace pocos días hablábamos de la liberación de Lenny como estable, esto significa que todos los que solemos trabajar en testing para disponer de las últimas versiones de los programas instalados en nuestro sistema ahora estamos en un sistema estable, a partir de ahora los cambios que se realizarán serán actualizaciones de seguridad.

Como queremos seguir usando las últimas versiones de nuestros programas favoritos debemos actualizar nuestro sistema.

Lo primero es editar el fichero /etc/apt/sources.list y cambiar todo lo que sea lenny a squeezy (además de realizar antes una copia de seguridad de tus ficheros y configuraciones):

# vi /etc/apt/sources.list
deb http://ftp.de.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.de.debian.org/debian/ squeeze main contrib non-free

deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main

#debian-multimedia
deb http://www.debian-multimedia.org squeeze main

guardamos el fichero, y ahora fijémonos que usamos aptitude en lugar de apt-get, los dos hacen lo mismo, pero en algunos foros he leído que es recomendable usar aptitude para realizar los upgrades (apt-get dist-upgrade), además por experiencia una vez me petó un sistema por usar apt-get :( no vayámosnosla a jugarla…

# aptitude update
# aptitude install apt dpkg aptitude
# aptitude full-upgrade

una vez terminada la actualización reiniciamos y cruzamos los dedos.

vale, como siempre, al momento que escribo el post lo voy probando, así puedo indicar si aparecen problemas y como resolverlos.

al gdm le ha costado un poco arrancar, pero finalmente ha arrancado correctamente, la versión de gnome que tengo ahora mismo es la misma.

en el upgrade tampoco ha habido …

Skype 4.0 para linux

Cuando se trata de software privativo los usuarios de linux siempre nos quedamos limitados y sin la guindilla del pastel, uno de los casos claros es Skype.

Recientemente ha salido la versión 4.0 de Skype para windows, según mi parecer es el mismo skype de siempre pero que le han cambiado un poco la cara, sigue haciendo lo mismo pero windows vista like.

Buscando por la red acerca de nuevas notícias he encontrado este artículo:

http://share.skype.com/sites/linux/2009/01/skype_for_linux_updates.html

La fecha del mismo es del 23 de Enero de este año, así que algo de movimiento si que hay.

Primero de todo se disculpan para tener a los usuarios de linux “in the dark” aka olvidados, tiene pinta que no les interesamos mucho, pero visto como está el tema de la telefonía, linux puede alcanzar una muy buena cuota de mercado en poco mas de un año gracias a android.

En el artículo cabe destacar estas cosas:

  • We’ve completely rewritten the audio library, and have spent considerable effort transforming the existing audio code into a form more suitable for Skype. We’ve also fixed some compatibility issues with Bluetooth headsets.

mmm, pues parece que si, que se han puesto las pilas y están reescribiendo código y apostando por la compatibilidad con dispositivos Bluetooth.

  • We’re also making substantial changes to the video library. We’re working to make it more stable and compatible with more webcams and X video modes.

Supongo que gracias a la aparición de v4l v2.

  • There is work underway to adopt

Antena3 + Toy Story + Debian

No se muy bien como definir este post, no se si casualidades de la vida de estas que ocurren de vez en cuando, pero ahora mismo en Antena 3 están dando la saga entera de Toy Story, mi pregunta, ¿es una pura coincidencia o los debianitas se encuentran en los rincones mas versemblantes y han conseguido colar la saga en antena a santo de la nueva release de debian?
Esta noche, como comentaba en un post anterior, Lenny ha pasado a Stable y ha nacido Squeeze para la versión en testing. A continuación tenéis una lista de los nombres de las versiones de debian, totalmente relacionadas con la megaproducción de pixar hace unos años, siendo una de las primeras películas de animación por ordenador de esta calidad y embergadura:

Pronto tendréis mas notícias sobre debian :D

Por cierto, esta noche pasada se cumplieron 1234567890 desde el 1 de enero del 1970, la fecha la cual se inician los sistemas unix:

$ date -d @1234567890
ds feb 14 00:31:30 CET 2009