MarioDebian, mi devlog

Bitácora de un desarrollador newbie.

Nuevo TcosMonitor2.0

Como ya dije hace unos días estoy reescribiendo tcosmonitor. Lo del nombre TcosMonitor2.0 no es definitivo, se aceptan sugerencias, la idea es que tenga un nombre distinto al viejo para poder tener ámbos mientras se termina el nuevo, ya que se instalan en sitios distintos.

El proceso es largo y tortuoso, pero estoy bastante contento de como está saliendo hasta ahora, he separado el backend (lo que hace cosas) del frontend (lo que las pinta por pantalla), de hecho esta pensado que se pueda instalar solo el backend en servidores que no tengan entorno gráfico, y el frontend en cualquier equipo. Incluso se puede programar el interfaz en Qt... o hacer applets...

Las novedades son muchas:

  1. Dialogo de conexión local o remota (inspirado en el que usa vmware-server):


       



    En el servidor de terminales hay un demonio, que es un servidor XMLRPC escrito en python, con una API pública para acciones del servidor, de los clientes, con soporte para crecer en forma de extensiones (plugins), etc...

    En el cliente tenemos este interfaz que nos permite conectarnos en local (sin pedir contraseña) o en remoto, validando contra PAM (quizás haya que admitir usuarios del grupo admin o crear un grupo de usuarios con permiso a acceder a tcosmonitor..).

    Todas las comunicaciones, excepto la primera (una especie de «hello») van cifradas (python-crypto Blowfish), espero que no afecte al rendimiento demasiado... la otra opción era usar SSL pero no me acaba de convencer.

    Ayer intentando instalar Xen encontré xenman y mirándolo un poco por encima se parece bastante a tcosmonitor (pygtk + xmlrpclib), ellos usan SSH entre la GUI y el servidor Xen. En TcosMonitor no creo que sea necesario llegar a esos extremos ya los más paranoicos pueden configurar un VPN o un tunel ssh y conectarnos usando como ip la del VPN o localhost y otro puerto...

  2. Preferencias. He añadido otro checkbox para no mostrar el diálogo anterior (si siempre nos conectamos en local)


  3. Extensiones. De una forma un poco atípica pero muy funcional se pueden desarrollar extensiones para dotar de nuevas funcionalidades a tcosmonitor2 así como desactivar las que no se usen:


Todavía no funcionan la mayoría de las cosas del tcosmonitor viejo (busca equipos y los muestra en la lista, sin acciones), pero una vez que la base esté hecha se pueden ir haciendo poco a poco como extensiones.

Para esta versión también espero que TcosMonitor2.0 sea compatible con terminales LTSP (aún hay gente que piensa que LTSP es mejor y no estoy por la labor de convencerles). TCOS demostrará (espero que no en mucho tiempo) que es una aplicaciones de terminales ligeros a tener en cuenta...





Nueva versión MaX 3.1

Esta noche (bueno esta mañana temprano) se ha hecho público el lanzamiento de la nueva versión MaX 3.1, sobre la base de Ubuntu Gutsy 7.10.

Como ya anuncié hace un tiempo se trata de una actualización de paquetes sin soporte físico (no hay CD o DVD) por lo que hay que partir de una instalación de Ubuntu, se añade un repositorio y se instala un metapaquete.

Esta actualización nos va a servir para preparar el camino hacia MaX 4.0 que si tendrá DVD / CD / USB y que saldrá poco tiempo después que Ubuntu Hardy.

Los pasos para instalar se pueden seguir en la nota de lanzamiento, o bien en el pequeño wiki que tenemos para la gestión de paquetes con TRAC. Una de las novedades es que hay acceso a nuestro entorno de desarrollo de manera pública, por lo que tendré que actualizar aquel artículo del blog donde criticaba este punto.

Se han creado distintos sabores para los que no quieran instalar todo:

  • max-desktop-gnome + max-desktop
  • max-desktop-kde + max-desktop
  • max-desktop-xfce + max-desktop
  • max-desktop-all + max-desktop (instala todo)

MaX desde sus principios está orientada a entornos educativos (va instalada de serie en todos los equipos de la Comunidad de Madrid en arranque dual)

Las novedades más destacadas es la incorporación de dos aplicaciones para hacer más fácil la vida a los TIC de cada centro:

  • BackHarddi: clonador de equipos basado en Debian installer
  • TCOS: terminales ligeros y control de aula.

No vienen como dependencias, ya que están pensados para instalarse en un equipo (no en todos) pero pronto se publicarán algunos artículos sobre el uso en aulas de verdad.

Entre las aplicaciones educativas que hemos reempaquetado están malted, jclic, javahotpot, atnag, geogebra e incluso alguna aplicación web como Animalandia, una enorme base de datos de fotos de animales, muchas geolocalizadas y que contiene ejercicios didácticos para jclic, adivinanzas y muchas cosas más...

También se ha hecho hincapié en aplicaciones para TabletPC con su propio submenu en Accesorios.

Otra de las novedades (sobre todo en el escritorio GNOME) es el uso de una configuración que no permite modificar los aspectos gráficos como el fondo o el tema (mediante gconf y la rama mandatory) para que no sea necesario un mantenimiento diario a los equipos.

Los que tengáis un rato y un buen ADSL, dadle una oportunidad ;) 





Adios VMware, hola VirtualBox

Antes de nada, feliz año a todos.

Llevo usando VirtualBox como solución de virtualización casi un mes intentando evitar VMware Server, solución gratis pero no libre.

VMware Server ha sido parte importante en el desarrollo de TCOS ya que me permitía arrancar una máquina virtual en la red de mi equipo con TCOS y así no depender de otros equipos.

Con el cambio de equipo, mi Thinkpad no permite mezcla por hardware de sonido y active PulseAudio de forma permanente, aunque pueda parecer una tontería me había quedado sin sonido en los terminales, siempre quedaba la opción de usar pasuspender y liberar la tarjeta de sonido mientras vmware estuviese ejecutándose.

Desde hoy en Debian unstable tenemos virtualbox-ose 1.5.4 y como suelo hacer cuando se actualiza algo que uso y me interesa he ido a leer el changelog (zless /usr/share/doc/virtualbox-ose/changelog.Debian.gz).

Sorpresa, ¡han añadido como dependencia de compilación libpulse-dev! Configuro una de las máquinas que suelo usar y aparece una nueva salida de sonido (además de OSS y ALSA, llamado PulseAudio)

El sonido es perfecto, y ya puedo empezar a olvidarme de vmware-server cuyo futuro para equipos de escritorio no pinta demasiado bien (hace un mes probe la nueva beta y se han deshecho del interfaz gráfico gtk para mover todo al navegador, el plugin para firefox/iceweasel ocupa 11Mb y no me convence ejecutar máquinas virtuales directamente desde el navegador)

Para prueba un pantallazo (remarcado en naranja, VBox, cliente PulseAudio por donde suena VirtualBox):


Como todo tiene que tener una parte negativa, en VirtualBox la configuración de la red para jugar con TCOS se complica un poco ya que hay que hacer un puente, el equipo tarda un poco más en arrancar y el interfaz de red eth0 no tiene dirección IP. He seguido este estupendo manual del wiki de Debian para el puente de VirtualBox.

Como una de las muchas ventajas, la suspensión es mucho más rápida (una máquina de 256 Mb de RAM se suspende en 2-3 segundos y se activa en el mismo tiempo), permite algo que vmware no tiene: pausar la máquina virtual. Los snapshost no son simples y se pueden cascadear (cuidado con el tamaño) y el driver de los addons es mucho mejor que el de VMware.

Por lo visto si la máquina es un Windows se puede incluso ejecutar en modo «seamless», lo que permite ver las ventanas de las aplicaciones Windows como si fuesen aplicaciones nativas de nuestro escritorio (cosas del rdesktop).

En fin creo que soy un nuevo cliente satisfecho de VirtualBox.