Flex Builder 3 para Linux: el gran olvidado de Adobe

El 14 de Agosto de 2008, Adobe publicó la versión alpha 4 de Flex Builer 3 para Linux. A pesar de ser una versión alpha, funciona bastante bien. Tiene al menos, cuatro grandes pegas: la primera que hay que hacer malabares para hacerlo funcionar con el «nuevo» SDK de Adobe AIR (1.5.1).  La segunda es que no dispone de «Design Mode». Es decir, no podremos hacer ningún diseño de pantalla en modo gráfico al igual que se puede hacer con Flex Builder en Windows. El tercer inconveniente es que no funciona en Eclipse 3.4 Ganymede.  Esto es especiamente grave, porque fuerza a tener instalada una versión anticuada de Eclipse sólo para que Flex Builder funcione.  O bien seguir una ristra de pasos a modo de parche que la propia comunidad de usuarios ha publicado (y que en Linux sólo parece funcionar a algunas personas).

El cuarto inconveniente es que algunos componentes Flex sólo están disponible en Linux como modo trial (es decir, para probar, y si te gusta, comprarlos…) Por ejemplo, el componente «Flex Data Visualization» de la figura tiene una marca de agua al ser compilado en Linux que indica que estamos usando una versión trial.

Esas son las pegas principales. Que no serían tales si los desarrolladores de Adobe para Linux se dignaran a indicar si tendremos versión de FB final para este sistema operativo o no. Me imagino que algo tendrán que hacer dentro de 234 días. ¿Por qué ese número? Muy sencillo, porque el FB 3 muestra en la ventana inferior de Eclipse este bonito mensaje contínuamente:

No es cuestión de que los linuxeros lo queramos todo gratis. Es más, los propios usuarios de Flex Builder para Linux han escrito una carta abierta a Adobe para que, por favor, les permitan comprar una licencia con el producto actualizado para Linux.

No todo son críticas. Hay que alabar que Adobe haya liberado bajo MPL el Flex SDK, lo que en otras palabras, viene a decirnos que «si no os gusta el Flex Builder para Linux que os hemos preparado, ¿por qué no os construís vosotros mismos uno?». No es un buen trato a los usuarios pero… alguno se lo ha tomado en serio y ya ha desarrollado una primera versión de  un plugin para desarrollo Flex en NetBeans (recordemos que FB corre sobre Eclipse).  Por el momento no tiene resaltado de sintaxis – sí en la versión SVN – ni Desing Mode, pero todo se andará. Además, es software open source, por lo que evolucionará.. y si FB no se pone las pilas, lo hará muy rápido.

No es la primera vez que Adobe llega a desarrollar para Linux un producto hasta etapas muy avanzadas del proyecto para luego abandonarlo. Los más viejos del lugar recordarán el fiasco de Adobe FrameMaker para Linux, que Adobe desarrolló hasta una versión beta (muy usable, la probé personalmente) y que en Noviembre de 2000 decidió abandonar.

¿Qué opinión os merece todo esto? ¿alguien de Adobe en la sala ;-)? ¿algún desarrollador de Flex en Linux que haga uso de FB u otro entorno?

Midnight Commander (mc) : cómo hacer que F10 funcione

Receta raṕida para los usuarios de mc (el administrador de archivos en modo terminal Midnight Commander, que tanto nos recuerda al Comandante Norton de cuando empezamos en MS-DOS, allá por los años en que navegábamos con Gopher por primera vez.. e incluso antes… snif, snif… cuentos del abuelo).

A la chicha: la tecla F10 hace que terminemos la sesión con mc.  Pero F10 está asignada por defecto al menú File de la Terminal de GNOME, por lo que siempre terminamos usando el ratón para pinchar en File/Quit de mc. Para que el F10 no se asigne a ningún atajo de teclado de la terminal GNOME, y por tanto funcione como Quit en mc, teclear lo siguiente:

$ gconftool-2 –set /apps/gnome-terminal/global/use_menu_accelerators  –type boot false

Si lo volvemos a poner a true lo dejaremos como viene de fábrica.

Cómo compilar OpenOffice.org

Este fin de semana me he liado la manta a la cabeza y me he puesto a compilar OpenOffice.org. Tengo una idea que me gustaría programar algún día relacionada con OOo, y uno de los primeros pasos consiste en saber compilar la bestia 🙂   No ha sido tan duro como parecía a simple vista.

Por si alguien más está interesado, he apuntado los pasos que he ido dando. Parto de Ubuntu 8.10, totalmente actualizado.

Lo primero sería descargar desde Subversion la aplicación ooo-build, que no es más que un script de configuración y ayuda a la compilación de OOo:

svn co svn://svn.gnome.org/svn/ooo-build/trunk ooo-build

Lo siguiente será instalar las dependencias (las he ido sacando una a una, por prueba y error, así que esto os ahorrará mucho tiempo):

$ sudo apt-get install
libpam0g-dev
flex
bison
mono-2.0-devel
libcupsys2-dev
gperf
libxslt
libpq-dev  (pq_config)
libcurl4-openssl-dev  (curl-config)
unixodbc-dev  (odbc)
xulrunner-1.9-dev  (libxul-nss)
libsane-dev
libxaw7-dev
libgstreamer0.10-dev
libgstreamer-plugins-base0.10-dev
libxtst-dev

También es necesario instalar un módulo Perl disponible en CPAN, así:

$  sudo perl -MCPAN -e ‘install Archive::Zip’

A continuación, la orden ./configure típica, con dos detalles:

$ ./configure –with-distro=UbuntuIntrepid  –disable-kde

En mi caso uso UbuntuIntrepid. Y no quiero tener nada que ver con KDE O:-)  (lo siento Marcos)

Para ver la distro que más se ajusta a vuestro PC podéis consultar el siguiente directorio:

$ ls -al distro-configs/

Sien el proceso de configuración observais que alguno de los parches que se quieren aplicar propios de vuestra distro no funciona, podéis comentar la línea que haga referencia a ese parche. Por ejemplo, en mi caso, ví que el parche ubuntu-lpi.diff no se aplicaba correctamente, por lo que comenté la línea que hacía referencia al mismo en el fichero  ooobuild/patches/dev300/apply

A continuación, descargar todos los paquetes de código fuente necesarios con una sencilla orden:

$ ./download

Y proceder a compilar

$ make

Aviso a navegantes: la compilación de OOo en mi ordenador (Dell Inspiron 530, comprado recientemente) duró unas 4 horas. Con ordenadores un poco más antiguos el proceso puede durar hasta 7 horas. Así que prepara un buen café y tómatelo con calma.

Cuando termines, instala tu OOo recién salido del horno (nunca mejor dicho) así:

$  ./bin/oooinstall /opt/ooo310-m6

Buscar por contenido de paquetes Ubuntu

Receta rápida: quiero instalar curl-config. El problema es que no existe ningún paquete .deb con ese nombre. Y buscando con apt-cache search  curl | grep dev , me salen unos cuantos. ¿Cuál de esos paquetes ofrece curl-config?  Seguro que te ha pasado antes (no con curl-config pero sí con otro nombre de binario)

Solución: consúltalo en http://packages.ubuntu.com/ (search the contents of package)

Update: gracias a Diego y Ubuj me entero de la existencia de apt-file, una aplicación que hace justo lo que acabo de comentar: busca en el contenido de los paquetes ofrecidos por el repositorio que queramos (en mi caso Ubuntu) el fichero que le digamos. Lógicamente lo primero que hay que hacer es instalar apt-file y a continuación pedir un update (apt-file update , para que se descargue la información del repositorio). A partir de ahí, buscar el nombre del paquete que ofrece el fichero que quieres es fácil:


$ apt-file search curl-config

Más info sobre apt-file aquí.

Cómo gestionar las cookies Flash

Carla Schroder, de Linux Planet, nos cuenta qué son las cookies Flash (nombre técnico: Local Shared Objects, o LSO). Aunque el concepto es igual o muy similar al de las cookies del navegador, conviene tener en cuenta algunas diferencias fundamentales:

* se generan por aquellas páginas web que tengan incrustado un objeto Flash (y no por todas, sólo por aquellas que quieran guardar información sobre nuestra configuración: por ejemplo, cuándo fue la última vez que conectamos, dónde pinchamos, qué nombre de usuario elegimos, etc..)

* se almacenan en una carpeta distinta a las cookies HTTP «normales» del navegador

* tienen mayor capacidad de almacenamiento de información (cookies HTTP=4kb, cookies Flash=100kb)

* guardan información en binario (a diferencia de las cookies http, que guardan información en texto plano)

* se puede gestionar la política de aceptación de cookies a través de la web de Adobe : Flash Cookie Manager . Lo cual da miedo, porque Adobe podría decidir (por supuesto, «no lo hacen») qué webs tienen acceso, sin preguntarte nada, a grabar por la webcam o el micro que tengas conectado a tu PC.

El artículo de Carla se divide en 2 partes. En la primera nos da una visión general sobre las cookies Flash y cómo gestionarlas a través de la web de Adobe. En la segunda nos indica dónde se guardan exactamente en una máquina Linux y cómo borrarlas.

Por último, indicar que Gnash, la alternativa libre de GNU al Flash Player ed Adobe, incluye una utilidad llamada soldumper, que permite descodificar y ver en texto plano el contenido binario de las cookies Flash.