Automágica: durante 2017 estoy trabajando bastante en Automágica, mi software para editar libros: Más información - Posts relacionados

El hack del día: cómo usar Citrix desde Ubuntu

Con el nombre genérico de Citrix, se suele conocer dentro de muchas empresas a una solución de virtualización de aplicaciones (XenApp) muy utilizada en corporaciones que permite a los usuarios conectarse con su PC a un servidor remoto y ejecutar las aplicaciones que allí se encuentran. Con esto se logra por ejemplo: reducir el gasto en licencias y centralizar actualizaciones.

En la empresa donde trabajo (una multinacional del rubro de las telecomunicaciones) lo usa. Además de aplicaciones de gestión de equipos, dentro de "Citrix", se puede correr un escritorio remoto. Esto permite, desde una PC con Internet, acceder a tu puesto de trabajo respetando las políticas de seguridad que haya dispuesto la empresa.

Ok, quiero acceder desde GNU/Linux. En particular Ubuntu, el SO que uso en mi notebook. El la mayoría de los casos, no vamos a tener soporte para esto. Escribo las siguientes instrucciones con la esperanza de que a alguien le sirva dentro de su organización.

Lo primero que necesitamos es un software cliente. Es la parte fácil. Podemos bajar el cliente e instalarlo. El ejecutable queda en:

/usr/lib/ICAClient/wfcmgr

Al intenatr ejecutarlo puede ser que obtengamos un error diciendo que falta la bibiloteca libXm.so.4. en Ubuntu 10.04 no viene la versión 4 de esta biblioteca, sino la 3.

Podemos instalar la versión 3:

sudo apt-get install libmotif3

y engañarlo; parece funcionar sin problemas:

sudo ln -s /usr/lib/libXm.so.3.0.2 /usr/lib/libXm.so.4

Lo siguiente que falta es un certificado, de lo contrario al intentar conectarnos obtendremos un error diciendo que no hemos especificado que confiamos en el host que nos servirá las aplicaciones.

A los usuarios de Windows les dan un archivo binario de extesión .p7b al que le hacen click derecho y eligen la opción "Instalar certificado". En GNU/Linux no es tan fácil y luego de buscar bastante en Internet, no encontré la forma de instalarlo, pero la solución me llegó casi Inspiración Divina o por Instinto Animal.

Utilicé el comando strings para leer cadenas de texto dentro del archivo .p7b y con grep busqué .crt, la extensión de los certificados:

strings XXXX.p7b | grep .crt

Encontré una url dentro de la empresa, me bajé el certificado y lo guardé en /usr/lib/ICAClient/keystore/cacerts, que es donde Citrix Xen App guarda los certificados.

Voilá! Estaba adentro.


Borrar todos los archivos de un directorio menos los que...

terMenos los que respetan un PATRON:

for a in ls | grep -v PATRON; do rm -fr $a; done

Menos los que contienen tar.gz en su nombre:

for a in ls | grep -v tar.gz; do rm -fr $a; done

Útil en muchas situaciones.

La línea de comandos es tu amiga.


Alarmas en GNOME

Nunca había usado esta aplicación hasta hoy. Estoy muy concentrado trabajando en la computadora, mensaje por IM: "llamame en 15 minutos". "Mmmm", pienso. "Me voy a olvidar". Debe haber alguna herramienta en mi escritorio que me permita resolver esto, es algo realmente sencillo. Busco: GNOME + alarma, encuentro: Gnome Alarm (el paquete se llama alarm-clock).

Pantallazo-Alarma

Cargo una alamar para dentro de 14 minutos. Si, la búsqueda llevo solo 1. ¡Genial! No solo por la herramienta (es sencilla pero extremadamente útil) sino por el ecosistema de software que es el Software Libre; no creo que en otro ámbito puedas tener una necesidad, pensar en un programar y que exista para solucionar tu problema solo por que antes ya alguien tuvo el problema y lo solucionó. Allí estaba la herramienta, lista para usar.

Llevo media hora, y ya la usé dos veces :)



Alimentando un Intrepid Ibex

Hoy salió Ubuntu 8.10, Intrepid Ibex. Cómo es costumbre, cada distribución de Ubuntu tiene un animal en su code name. El Ibex, o Capra Ibex es un tipo de Cabra que habita en Los Alpes.

Nosotros, en Argentina, tenemos nuestra propia versión, también conocida como Chivo:


Acomodar imágenes con GQView

Algunas cámaras de fotos tienen un dispositivo que detecta su posición, entonces si sacamos una foto con la cámara posicionada verticalmente, la imagen resultante es más alta que ancha. Lo mismo sucede en el caso contrario, si se saca una foto con la cámara en forma horizontal, la imagen resultante será más ancha que alta.

Esto parece bastante bueno. Lamentablemente muchos dispositivos (cómo los celulares) no vienen equipados con este dispositivo y todas las fotos terminan siendo, por ejemplo, más altas que anchas. Otra cosa a tener en cuenta es que la mencionada funcionalidad no funciona del todo bien en todas las cámaras. Si bien en el siguiente caso es algo apropiado:

En este no lo es:

Y nos interesa convertirla en:

El problema crece cuando sacamos muchas fotos[0]. Ya sea para compartirlas en Internet o para guardarlas en nuestra computadora queremos que estén posicionadas correctamente. En GNU/Linux es fácil rotar una imagen, el comando convert de ImageMagic, por ejemplo, lo hace en un instante. Si tenemos muchas imágenes a retocar, podemos hacer un script que recorra una lista de archivos y sobre todos realice el proceso. Pero en la mayoría de los casos no será tan simple. Querremos modificar algunas imágenes, pero querremos que otras se mantengan en su posición original. Lo ideal es utilizar un visualizador de imágenes y cada vez que encontramos una cuya posición queremos rotar, indicarle esto a visualizador para que la imagen sea rotada definitivamente.

GQview viene preparado para hacer esto, utilizando el comando jpegtrans. No tenía instalado este programa en mi computadora, pero pude editar la configuración del software para que ejecute mis comandos personalizados.

En Editar/Preferencias... solapa Editores podemos especificar una secuencia de comandos para ser ejecutados al elegir una opción del menú:

Completé las filas 7 y 8 con los siguientes valores:

Rotar imagen (sentido horario) - convert -rotate 270 %p %p

Rotar imagen (antihorario) - convert -rotate 90 %p %p

Ahora cuando estoy visualizando imágenes y encuentro alguna mal orientada, simplemente tengo que apretar Ctrl-7 u Ctrl-8 para ajustarla.

[0] en mi caso unas 1000, en mi viaje a Brasil.



Los animales de Ubuntu

Ojo! No! Por supuesto que no estoy hablando de los desarrolladores o algo por el estilo! Me refiero a los nombres con los que llaman a sus distribuciones.

Hace unos días, con la salida de Feisty Fawn (7.04), se me ocurrió salir a la caza de los significados de los nombres de estas distribuciones. Diversas ocupaciones no me permitieron emprender el safari, pero por suerte Facundo Batista lo hizo en su blog.


Cargar programas gráficos como un usuario distinto al que está logueado

Escenario

Te despertás en la mañana. El zumbido de la computadora se entremezcla con el canto de los pájaritos. Tu hermana la debe haber encendido temprano. Una ducha para terminar de despertarte. Café, masitas de agua (típico desayuno del día que te das cuenta que hay que ir al super a hacer las compras de la semana). La computadora está encendida, pensás en iniciar el cliente de correo para leer algunos mails. Usás Thunderbird (no necesariamente, pero si algún cliente gráfico). Encendés el monitor que está apagado y rápidamente reconocés el wallpaper que tu hermana se hizo con la foto del novio. En la barra de tareas hay un programa minimizado: lees aMule 2.0.3. Click. Decenas de barritas de colores, algunas ya se completaron de verde (hoy es un buen día para compartir música).

Abris una terminal:

marisu@sarge:~$ su juanjo

Password:

juanjo@sarge:/home/marisu$ thunderbird

Xlib: connection to ":0.0" refused by server

Xlib: No protocol specified


(thunderbird-bin:15655): Gtk-WARNING **: cannot open display:

juanjo@sarge:/home/marisu$

Oops!

Sos un buen hermano, así que no querés cortarle la descarga de música a tu hermana. Pero querés aprovechar mientras el café está aún caliente para leer tus mails. ¿Solución?

Solución

juanjo@sarge:~$ exit

exit

marisu@sarge:~$ xhost +local:juanjo

non-network local connections being added to access control list

marisu@sarge:~$ su juanjo

Password:

juanjo@sarge:/home/marisu$ thunderbird

Dejo este post por que hoy a la mañana no recordaba el comando y estuve unos 10 minutos en google hasta encontrarlo, espero a alguien le sirva! ¿Alguna otra forma de solucionar el problema?

Saludos!