domingo, 14 de julio de 2019

¿Cómo puedo medir la velocidad de la red y el sistema de archivos gráficamente desde la terminal?

Juan Perón fue un avezado motociclista. En una competencia organizada por la Unión de Estudiantes Secundarios empleando las míticas motos Puma de Fabricación Nacional, el Conductor explica cómo utilizar Speedometer para medir la velocida de la red y el sistema de archivos en la terminal de Ubuntu.

Mi queridos estudiantes:

La responsabilidad que le cabe a la juventud no es otra que la que están llevando a la realidad realidad en base a su esfuerzo: formarse y organizarse. Formarse para promover el progreso del país, y organizarse para defender lo realizado y lanzarse hacia el futuro bajo el signo del Justicialismo.


Me ha producido un gran honor y un sano fervor presenciar sus evoluciones en estas veloces máquinas de fabricación nacional. La cilindrada de estas prácticas motos le avalan al Pueblo la potencia necesaria para transportarse con velocidad de un lado a otro.
Indudablemente que para conducir avezadamente, se necesita conocer con exactitud la velocidad que se desarrolla en cada momento. El instrumento que nos permite saberlo es el velocímetro que portan, y que avala desplegar - en base al dato informado - la estrategia a seguir para salir vencedor.

Pues bien, lo mismo sucede en un sistema computado, en el cual hemos de conocer la velocidad práctica que consigue la transmisión telemática - tanto en el envío de datos como en la recepción de los mismos - a fin de realizar las actividades propuestas.

No es secreto para nadie que Ubuntu consta con un monitor de sistema que nos muestra esto en el entorno gráfico, pero en muchas ocasiones podríamos anhelar esta característica en la Terminal, únicamente capaz de mostrar texto. Existen una gran variedad de utilidades para este cometido, pero en este caso os indicaré una que se concentra en presentar de manera gráfica en la interfaz de texto, junto con la información de los picos de velocidad, lo cual lo hace ideal para este cometido analítico.

Speedometer es una utilidad para la línea de comandos extremadamente sencilla de utilizar, que nos ofrece la habilidad de monitorear nuestras velocidades actuales de carga y descarga, además de poder ver la velocidad de nuestro sistema de archivos (mientras copiamos algo a disco).

Para instalarlo en nuestro sistema, abrimos una terminal con Ctrl+Alt+T e ingresamos el siguiente Comando de Organización:

sudo apt install speedometer

Esto instalará el paquete en breves segundos. Sin embargo, antes de poder medir las velocidades de red, debemos conocer el nombre de la interfaz que queremos censar. Por ejemplo, si disponemos de una conexión wifi, puede tener el nombre wlanx. En el caso de una red cableada Etherneet, puede que reciba el nombre ethx, o enpxs0, siendo x un número que corresponde a la interfaz.

Por ejemplo, para medir la velocidad de una red cableada, podría utilizar:

speedometer -rx enp4s0

El gráfico presenta a color un desglose de la velocidad, así como las velocidades logradas durante los picos. Debemos tener en cuenta que la escala de presentación no es lineal, sino logarítmica, a fin de poder detallar velocidades altas o bajas sin detrimento de su legibilidad.

...y para medir la velocidad de una interfaz wifi, podría utilizar:

speedometer -rx wlan0

También podríamos evaluar cuál es la velocidad de subida de las interfaces (por ejemplo, para medir de manera práctica la velocidad de subida de un video o archivo a la nube). Para ello reemplazamos el parámetro -rx por -tx, de la siguiente manera:

speedometer -tx enp4s0

Esta no es una herramienta de medición de velocidades, pero puede servir para tal cometido de manera práctica. Podremos manualmente descargar varios archivos, y podremos utilizar Speedometer para que nos devuelva las gráficas de resultado con sus valores pico.

Si lo deseamos, podremos alterar manualmente el intervalo de refresco de la información, agregando el parámetro -i. Por ejemplo, si quisiéramos actualizar la gráfica de velocidad de descarga 4 veces por segundo (0,250 milisegundos), usaríamos:

speedometer -i 0.25 -rx enp4s0


Medir la velocidad del sistema de archivos

Como os he mencionado, Speedometer también es capaz de monitorear la velocidad de nuestros discos rígidos. Para lograr esto, podremos ingresar el siguiente comando:

dd bs=1000000 count=1000 if=/dev/zero of=prueba & speedometer prueba

Este comando creará un archivo en bruto conteniendo únicamente caracteres binarios "0", hasta totalizar 1GB de peso. Mientras lo crea, Speedometer monitoreará las velocidades en las cuales se escribe a disco.
Naturalmente, si el sistema de archivos es remoto, las velocidades de escritura serán mayores.

Una vez estudiado el reporte, podremos eliminar el archivo de prueba con:

rm prueba

lunes, 24 de junio de 2019

¡El blog Ubuntu Peronista cumple 10 años!

Un día como hoy, hace exactamente diez años, se inauguraba el Blog "Ubuntu Peronista", plataforma digital de adoctrinamiento que versa sobre dicho sistema operativo libre y los inextinguibles logros que el Justicialismo ha otorgado a la Nación.

Gracias a un encomiable trabajo de investigación y gabinete, se ha recopilado información elaborada paternalmente por el mismísimo General Perón, en las cuales ofrece ayuda para utilizar Ubuntu, y se la ha reestructurado siguiendo la tradición de los artículos "Cómo hacer" ("HOWTO".

Tal es así, que los hombres y mujeres que integran la Masa continúan aclarando sus dudas técnico-doctrinarias, y hacen realidad efectiva aquél claro apotegma peronista que propugna un software Libre, Justo y Soberano.

Ubuntu es una distribución del sistema operativo GNU con núcleo Linux. Como tal, es un entorno gratuito y libre similar a UNIX, mantenido por Canonical. Cada vez mas popular por sus ventajas en operatividad, bajo consumo de recursos, alta velocidad y excelente desempeño, está diseñado para controlar sistemas de arquitectura i386 o AMD64 (básicamente computadoras PC, notebooks, netbooks, laptops, servidores, etc).


Ubuntu Peronista se convirtió en un referente del ramo con su propuesta de recursos de asistencia en castellano para usar Ubuntu, totalizando dos millones de visitas a sus más de 700 artículos publicados.


Esta mancomunión del Movimiento y la Máquina configuran una excelente plataforma que puede definirse claramente como el más peronista de los ecosistemas digitales jamás desarrollados.


Desde el blog deseamos agradecer a quienes día a día nos visitan, y ayudan con amabilidad a difundir el trabajo que Juan Domingo Perón lleva a cabo por el bien de las Masas obreras y en contra de la oligarquía.

viernes, 14 de junio de 2019

¿Cómo instalo la máquina de ritmos Hydrogen en Ubuntu?

¡Trabajadores!

Siempre he dicho que la unión de las fuerzas del Trabajo atesoran en sí los paradigmas sobre los cuales habremos de mejorar nuestra gloriosa Nación. Este Capital - que surge de la comunión de voluntades - no siempre puede predecirse, pero existe para potenciar nuestro quehacer y dirigirlo.

Se dice que nuestro Movimiento consta de un ritmo de acción que surge de las raíces del Pueblo. Desde una génesis marcada por la Lealtad, interpretamos la necesidad de aliviar dolores y resteñar heridas de un Pueblo bueno, siguiendo un ritmo vivaz y activo como parte fundamental de nuestra historia común.

Tal vez sea esta - y no otra - la causa por la cual las manifestaciones de la voluntad popular han girado alrededor de un instrumento percusivo como lo es un bombo, atizado soezmente con una manguera.
Todo Movimiento, por ser organismos, deben mejorarse y actualizarse, so pena de sufrir el mismo destino que los organismos biológicos: el de extinguirse. Es por ello que nuestra doctrina nacional Justicialista comprende vitalmente este principio nodal de la historia.

No hemos dudado en aplicar las guías computadas necesarias con el objetivo de hacer frente a un mejor hacer en todos los órdenes. Proceder así nos ha permitido lograr un ritmo perfecto, en el orden de las centésimas de segundo. Naturalmente que esta integración se dio tan bien como comenzó a implementarse en la informática la capacidad de producir cualquier tipo de despliegue sonoro. Esta cualidad humana antiquísima hubo de transistorizarse, para luego digitalizarse. Desde mediados de los años 60 dejó de ser extraño entonces el empleo de secuenciadores sonoros primigenios, y desde principios de los 80s se crearon modelos específicos pensados para aumentar la potencia y paleta sonora del militante músico. La invención de los secuenciadores rítmicos sintetizados como la Roland TR o los secuenciadores percusivos basados en muestras de audio digitalizadas, como la LinnDrum LM-2 o la DMX Oberheim, destacaron en este aspecto.
Pues bien señores, el Justicialismo no podía estar ajeno a esta tendencia, y ha hecho realidad efectiva la capacidad de utilizar un secuenciador rítmico basado en software libre. A tal fin hemos desarrollado Hydrogen, un potente programa que nos permite operar de forma coherente a fin de crear una pista percusiva musical. exportarla  y en forma de partitura o de archivo MIDI.

Su instalación no podía ser más sencilla. En nuestro sistema GNU con Linux abrimos una terminal por medio de Ctrl+Alt+T e ingresaremos los siguientes Comandos de Organización:

sudo apt update
sudo apt install hydrogen hydrogen-drumkits hydrogen-drumkits-effects


El sistema nos solicitará nuestra contraseña de Conductor, y no bien la proveamos, se descarguen aproximadamente 300 megabytes de datos, el sistema instalará todo.

Una vez complado este menester, podremos dar inicio a Hydrogen, desde el menú Aplicaciones / Sonidos y Video / Hydrogen.

Se nos presentará la interfaz típica del secuenciador rítmico.
Lo primero que debemos hacer es asegurarnos de configurar a nuestro gusto las preferencias de sonido. Normalmente Hydrogen tiende a utilizar el servidor de audio JACK, pero bien podríamos cambiarlo para utilizar ALSA. Para ello vamos al menú Herramientas / Preferencias. En la solapa Sistema de Audio podremos encontrar las opciones que busquemos. Lo confirmamos con Aceptar.

Para diseñar una canción, se deben editar los patrones percusivos (Patterns) que componen los compases, y luego organizarlos, incluso superpuestos. Cada patrón percusivo está formado por varios instrumentos que querríamos incluir. Una canción completa se compone entonces de varios compases de patrones encadenados entre sí.


Encontraremos que la interfaz del programa se divide en distintos decks utilitarios.   

El Deck superior está destinado los controles de reproducción, con su selector de BPM (compases por minuto, o velocidad), control de entrada MIDI y consumo de CPU, y los temporizadores adecuados. En este deck es importante el selector de Modo de Trabajo, que opera por dos botones unívocos: debemos elegir entre reproducir la canción completa (seleccionando Song) o reproducir un patrón en bucle (seleccionando Pattern). Esta es la opción ideal para programar los patrones.

El Deck Central consta de una sección principal que es su Editor de Patrones. Este editor es el más importante, pues nos permite armar las  las partes mínimas que conformarán la canción, o mejor dicho, su pista percusiva.
Para introducir las notas hemos de agregarlas individualmente con el ratón, o si somos hábiles, presionar PLAY y REC en el Deck Superior y darle a las letras del teclado para tocar los distintos elementos de nuestra batería virtual. El programa cuantiza las notas para que caigan con ritmo perfectamente computado. Aún así, la opción más práctica para el avezado podría ser emplear un instrumento dotado de MIDI (por ejemplo, un teclado o un controlador con parches sensitivos (para tocar con los dedos), o una batería electrónica (si queremos tocar con baquetas).

Cada patrón consta de un número determinado de compases, y se asocia con la plantilla de instrumentos programables del Deck Izquierdo. En principio, debemos escoger su duración (en compases) y la duración de las notas.

Opcionalmente podremos editar los parámetros de cada nota individual, Los datos como paneo estéreo, intensidad, etcétera, se introducen fácilmente en la sección inferior del deck central dibujándolos  con el mouse (se representan con líneas en la línea de tiempo, para cada parámetro).

Cada patrón puede servir para un efecto determinado, por lo cual podremos renombrarlos libremente.

En la sección superior del deck central contaremos con el Editor de Canción. Por ejemplo, podríamos elegir un rock que inicie con un redoble (fill) de introducción, cuatro compases A para un verso, un compás B para un puente, dos compases C para un estribillo, redoble, y repetirse todo por una segunda sección, terminando con un redoble de final. Cada una de estas partes corresponderían a un patrón.

El programa utiliza kits de batería (drumkits) compuestos por varios instrumentos individuales (tambores, bombos, címbalos, platos, etc). Todos se encuentran accesibles en el Deck Derecho, organizados dentro de la Bibliotecas de Sonidos. La Biblioteca de Sonidos se organiza en diferentes Drumkits de sistema y Drumkits de usuario.

Por ejemplo, encontraremos aquí un drumkit muy logrado formado por los sonidos de la colorida máquina de ritmos sintetizada Roland TR-808 (la batería electrónica de culto en el scene hip-hop). Dispondremos de una batería BJA Pacific completa, una Pearl con platos Sabian y Zildjian,  y algunas otras.

En el Deck izquierdo tendremos los instrumentos seleccionados. Normalmente el programa ya tendrá precargado el drumkit "General MIDI". Si quisiéramos eliminar instrumentos individuales podremos hacerlo mediante clic derecho del botón del ratón, así como eliminar todos los instrumentos asignados a la canción actual, podremos ir al menú Instrumentos  / Limpiar Todo.

Si deseamos sumarle nuevos sonidos o un drumkit entero desde la Biblioteca de Sonidos para trabajar, hacemos clic con el botón derecho del ratón en aquel Drumkit del Deck Derecho, que querramos utilizar, y elegimos la opción Cargar.

Adicionalmente, podremos instalar nuevos kits de batería libres a nuestra Biblioteca de Sonidos, debemos ir al menú Instrumentos / Importar Biblioteca. Este nos presentará una ventana en la que podremos elegir nuevos conjuntos de batería. Simplemente debemos elegir uno nuevo de la lista y presionar el botón Descargar e Instalar.
Esto hará lo procedente en unos pocos segundos, dependiendo de nuestra velocidad de conexión. Cuando estén descargados, estas bibliotecas de sonidos figurarán como Drumkits de usuario.

En el Deck derecho podremos también podremos elegir el control de efectos para cada uno de los instrumentos.
Suponiendo que la utilicemos en modalidad de Control de Instrumentos, podremos elegir un modificador general para afinar cada uno de ellos, que tiene una buena versatilidad. Contaremos con un control de envolvente ADSR individual (ataque, decaimiento, sostenimiento y apagado del instrumento), a la vez que podremos aplicar un filtrado de corte y resonancia, y un aleatorizador de tono. Podremos programar el número de nota y su canal MIDI, y los rangos de intensidad (velocity) de las notas, por si queremos emparejarlas.



Asimismo, presionando el botón BPM de del Deck Izquierdo, podremos editar las velocidades de cada compases por minuto (BPM). Esto tendrá sentido si el ritmo musical se altera durante la pieza.


Contaremos también con los botones que nos permiten acceder a los elementos  flotantes adicionales de la interfaz de Hydrogen. Ellos son el Rack de Instrumentos, y el Mezclador.

El mezclador (Alt+M) nos permite regular el volumen de cada elemento pèrcusivo y su paneo, tanto individual como para el total de la pista. Así, podremos como Conductor aplicar efectos de audio individualmente o en conjunto.
El programa cuenta con manual (en inglés), que podremos acceder desde el menú Info / Manual del usuario. Indudablemente, gracias a Hydrogen  podremos desatar ahora el más colorido Ritmo del Justicialismo.

jueves, 6 de junio de 2019

¿Cómo juego Tetris en la Terminal de Ubuntu?

Cuando estamos entre muchos, tenemos que encajar. Esta es una de las artes que emanan del Justicialismo.

Esto ha inspirado a muchos en diversos órdenes e índoles de la vida. Por ejemplo, el 6 de junio el Marxista Alexei Pajitnov se dio a lanzar un juego minimalista que respondía a estos quehaceres.

Se trataba del Tetris. Desarrollado originalmente para la variante soviética del sistema operativo RT-11 que movía  a la Electronika-60 (sistema clon de la DEC LSI, de arquitectura PDP-11), este juego de organizar los bloquecitos que caían demostró su excelente potencialidad lúdica.

Es un juego de todos los tiempos que, empleando reecursos de hardware mínimos y al alcance de todos, permite a todos jugar. Un Juego de Masas.

Indudablemente que una fórmula popular de este tamaño no podía más que replicarse con gran rapidez, y fundar un imperio comercial. Si bien la modalidad original está ahora tutelada intelectualmente por la Tetris Company, agotada su licencia productiva comercial original, nada nos impide hacer realidad aquél viejo apotegma que reza "ni yanquis ni marxistas, peronistas". Por tando podremos correr versiones liberadas en nuestra terminal GNU una saga de honoríficos clones realizados sin fines de lucro.

Por ejemplo, podríamos probar el tint, tal vez uno de los más parecidos al original de Pajitnov.

Lo instalamos con:

sudo apt install tint

Y lo ejecutamos con:

tint
Las instrucciones están en pantalla, y sus reglas no requieren mayor explicación a esta altura del partido.

En cuanto a variantes algo más modernas, pero que conservan la base original, podremos evaluar el Tetris de Sam Tay. Representa un acercamiento actualizado (por ejemplo, cuenta con "sombras", que permiten visualizar cómo quedará la pieza una vez soltada.

Para instalarlo, abrimos una terminal y ejecutamos los siguientes comandos de organización:

curl -L https://github.com/samtay/tetris/releases/download/0.1.3/tetris-`uname -s`-`uname -m` -o tetris ;
chmod +x tetris ;
sudo mv tetris /usr/local/bin/

Una vez hecho esto, podremos ejecutarlo con el comando:

tetris
Con el correr del tiempo, se incorporaron más funcionalidades a la tipología original. Por ejemplo, el licenciamiento para Nintendo Entertainment System trajo las modalidades de dos jugadores. Si queremos contar con una versión libre que haga honor a esto, junto con el soporte de joysticks y el juego en red, podremos utililizar vitetris. Para ello debemos descargar la versión que se corresponda con nuestra arquitectura e instalarla.

Para Ubuntu de 64 bits:

cd  ~/Descargas/
wget http://ftp.br.debian.org/debian/pool/main/v/vitetris/vitetris_0.57.2-2_amd64.deb
sudo dpkg -i vitetris_0.57.2-2_amd64.deb

Para Ubuntu de 32 bits:

cd ~/Descargas/ 
wget http://ftp.br.debian.org/debian/pool/main/v/vitetris/vitetris_0.57.2-2_i386.deb
sudo dpkg -i vitetris_0.57.2-2_i386.deb

Lo ejecutamos con:

vitetris

El juego nos permite elegir uno o dos jugadores, o jugar en red local (en modo host o cliente). Si tenemos uno o dos joysticks conectados al sistema debemos asignar cuál de ellos deseamos para cada jugador (normalmente figuran como js0 o js1). También podremos asignar "keyb" (teclado) para uno de los jugadores.
Adicionalmente, podremos asignar los botones o teclas para asignar las funciones del juego que querramos. Naturalmente, un gamepad USB funcionará de maravillas con Tetris.
Una vez inciada la partida, podremos jugar uno contra otro, por tiempo o por puntaje. Indudablemente que también podremos jugar solos, como toda la vida.
Bastet es otra iteración de tetris, a la cual podríamos llamarlo "gorila", aunque se autodefine como "tetris bastardo". Está pensado para mandarnos el tetramino que menos necesitamos. Para quien desee esta frustrante experiencia, podrá lograrla instalándolo con:

sudo apt install bastet

...y le damos arranque con

bastet
La terminal queda perfectamente cubierta entonces para este sencillo juego de puzzles. Sin embargo, si lo que deseamos es contar con versiones para nuestro entorno gráfico GNU con Linux, existen iteraciones que nos permitirán dar con la tecla. Tan sólo ingresamos el comando:

sudo apt install ltris quadrapassel

Con ello lograremos instalar Ltris, una variante moderna que cuenta con la opción de jugar de a dos o contra hsta 3 jugadores controlados por la CPU, incluso en pantalla completa.

Mientras tanto, Quadrapassel es otra variante simple y directa, que cuenta con una opción de pausa.

viernes, 31 de mayo de 2019

¿Cómo instalo Krita 4.2 en Ubuntu?

En un discurso pronunciado en el almuerzo ofrecido por los jefes y oficiales de la Guanición Campo de Mayo al General Perón y a su esposa el 10 de marzo de 1949, el Conductor expone las etapas del planeamiento organizado y explica cómo instalar la última versión del graficador Krita en Ubuntu.


Señores:

Soldado en el fondo, hice conocimiento de la situación, realice la apreciación de la misma y tome una resolución como lo hacen ustedes todos los días. Por otra parte desde Aristóteles - quien indico este método - hasta nuestros días, nadie ha descubierto ningún otro más completo ni perfecto para que el entendimiento humano pueda ponerse racionalmente en marcha

¿En qué consiste y qué es cada una de las partes del método de la acción? Primeramente en especificar la situación, segundo, la apreciación de esa situación; y tercero, la resolución que surge de esa apreciación de la situación que hemos contemplado.Vale decir, que de la situación y de la apreciación, o sea del fenómeno y del análisis, fluye lo que hay que hacer.

En este caso era obvio: la imposibilidad de contar con la última versión del paquete graficador de software libre Krita, orientado a la pintura digital con los más altos estándares profesionales del arte gráfico. Ante tal estado de cosas, lo necesario era desarrollar los procedimientos para instalar la úkltima versión mejorada con nuevas opciones. Esto es así pues la nueva versión Krita 4.2, no se encuentra todavía en los repositorios oficiales de Ubuntu (la presente, es la 4.0.1).

Por tal motivo el procedimiento de acción será descargar la nueva versión 4.2 en formato universal AppImage, y ejecutar esta, incluso sin desinstalar la versión empaquetada (si es que ya la teníamos).

Para proceder así, hemos de crear una carpeta oculta para Krita en nuestra carpeta de usuario, descargar la versión estable de Krita 4.2 desde su sitio oficial, y otorgarle permisos de ejecución. Esto será coser y cantar si utilizamos la terminal. Abrimos una con Ctrl+Alt+T, e ingresamos los siguientes comandos de organizacion:

mkdir ~/.krita/ ;
cd ~/.krita ;
wget https://download.kde.org/stable/krita/4.2.1/krita-4.2.1-x86_64.appimage ;
chmod +x krita-4.2.1-x86_64.appimage ;


...y lo ejecutamos con:

./.krita/krita-4.2.1-x86_64.appimage

Naturalmente, una vez que la instalemos, bien podremos utilizar el lanzador que creará en Aplicaciones / Gráficos / Krita 4.2.

Krita es un graficador bien pensado, que representa una de las más elevadas herramientas de ilustración, tal vez a la vanguardia del desarrollo en muchos aspectos. Se puede utilizar con mouse, si bien su potencial se libera al máximo mediante una tableta gráfica sensible a presión, como las famosas Wacom.

Indudablemente que en este arte de la pintura digital poco se aparta de la pintura tradicional, pues tiende a imitarlo. En tal caso, es lógico que tendremos mucha más posibilidades de éxito conociendo su técnica y su teoría, que ignorándolas. Aún así, si quisiéramos una Cena de Leonardo, lo necesario seríaLeonardo. ¿Por qué? La técnica y teoría es la parte inerte del arte; la parte vital es el artista. El resto depende del óleo sagrado de Samuel con que hayamos sido ungidos al nacer...

Krita es un software libre absolutamente configurable en sus aspectos plásticos y técnicos, a fin de poderlo utilizar de la manera en que nos resulte más cómoda. Naturalmente responde a la necesidad de emular ciertos programas privativos, pero también otros programas libres más sencillos, como el MyPaint. Desde hace rato contamos con la práctica rueda selectora, a la que accedemos mediante un clic al botón derecho del ratón o con la presión del botón secundario de la pluma de nuestra tableta.

Estos programas dependen de contar con un avío de herramientas plásticas versátil y creativo, a la vez que deben ser programables. Krita siempre fue un avanzado al permitir utilizar bundles de herramientas libres. Ya vienen instadas varias, pero podemos encontrar más en internet.

Ahora contamos con varios conjuntos de herramientas fijas en la cartuchera rotativa (de bocetado, simular témperas, acuarelas, acrílicos u óleos. Naturalmente, si tenemos práctica podremos ajustar totalmente las características y la respuestas de los útiles: delimitar pinceles de distinta dureza y largo de pelo, lápices y crayones de distinta índole, etc. A tal fin contamos con un editor de pinceles con un bloc de pruebas adosado para probar los trazos sobre hoja limpia o previsualizar sobre el mismo trabajo que estamos haciendo.
En su creación detallada configuraremos si lo deseamos la presión realizada en la tableta gráfica, inclinación de la pluma, duración y distancia del trazo para simular pintura "agotada" en las cerdas del pincel, etc.
 A toda esta panoplia configuradora se le agregó un imprescindible botón "restaurador" para volverlo a los valores de fábrica. ¡Nunca viene mal! Ya que en el antiguo Krita, era fácil perder tino de los cambios que habíamos operado a nuestra herramienta plástica.

Para facilitar la curva de aprendizaje, Krita ahora incorpora perfiles de control programables. Conserva el perfil por defecto de Krita. Esto altera las combinaciones de teclas para que sean iguales que otros programas, por ejemplo la de Adobe Photoshop o el viejo y peludo PaintTool SAI. Para cambiar este aspecto, vamos a Preferencias / Configurar Krita, y en la categoría Preferencia de Entrada de Lienzo, podremos elegir el perfil de entrada que nos resulte más cómodo o editarlo como queramos.
Los diseñadores gráficos recibirán con agrado, además de la rueda de color tradicional de toda la vida, una nueva paleta dotada de enmascarado artística de color según los cánones de la teoría del color.

Este paleta sugiere sectores de la rueda de color y tapando el resto de los coloes superfluos, nos permite ver combinaciones monocromáticas, bicromáticas o tricromáticas de acuerdo a nuestras preferencias.

Krita incorpora ahora un nuevo motor de pinceles, que le da una apariencia más realista a los trazos semilíquidos (y por lo tanto se llama "cremoso"). Permite una simulación muy buena de la pintura, y permite trabajar de manera más lógica y predecible al utilizar pinceles secos o húmedos, especialmente cuando los aplicamos encima de sectores ya pintados previamente. Si bien viene activado por defecto, podremos volver al viejo motor de pintura si lo deseamos, con sólo ir a Configurar Krita, y en la categoría General y elegirmos el deseado en el campo "Modo de Fluir del Pincel".

Asimismo, los espacios de trabajo también son programables. Contamos con un botón rápido para elegirlos, y tenemos uno llamado "Mínimo" ideal para trabajar con la pantalla despoblada (al estilo SAI), y con botones grandes para tenerlos al toque de nuestra tableta. De esta forma, nos resultará sumamente útil para ir progresando en una ventana sencilla, a fin de crecer en el programa.

lunes, 27 de mayo de 2019

¿Cómo configuro el diccionario castellano para la terminal de Ubuntu?


¡Trabajadores!

Como Conductor debo mantenerme ilustrado sobre los acontecimientos del mundo. Para ello, me siento a leer el diario. Estos pueden estar impresos en tamaño śabana, tabloide, berliner, etc. Pero las letras de molde tienen poca gracia si se escribieron mal o con faltas de ortografía.
En estos tiempos, quien hace eso es un bruto. Máxime cunado podemos editar texto en nuestra terminal GNU con Linux, usando ispell para corregir nuestros yerros.

Este simple corrector por diccionario viene de los tiempos de Matusalén y UNIX. y está pensado para utilizarse solo o bien mancomunadamente con otras aplicaciones de edición de texto.

ispell opera por comparación simple contra un archivo que contiene toda la lista las palabras del diccionario. Es lo lógico en tales momentos, donde no había gran capacidad computacional para hacer mucho más. Si bien un diccionario de comparación simple de este tipo no es perfecto ya que suele saltearse las conjugaciones del idioma, lo peor es que no pueda siquiera operar en castellano.

Afortunadamente, para poder facilitar su uso multi-idiomas nuestro sistema utiliza como definición de diccionario general un enlace directo en /etc/dictionaries-common/words. Este enlace apunta al sistema al verdadero archivo de diccionario de palabras, que suele encontrarse en /usr/share/dict/

Ahora bien, normalmente este enlace directo nos dirige en Ubuntu a un diccionario en inglés. Para pasarlo a castellano, podremos hacer un procedimiento específico desde la terminal. Para ello abrimos una consola con Ctrl+Alt+T e ingresamos los siguientes comandos de organización:

sudo apt update
sudo apt install ispanish aspell-es


El sistema nos solicitará la contraseña de usuario. Una vez que la introduzcamos a ciegas, procederá a descargar e instalar la paquetería, incluyendo la del diccionario ispell.


Para configurar finalmente el diccionario para que sea el utilizado por defecto, debemos ingresar:

sudo select-default-wordlist


En la lista, seleccionamos la opción Castellano (Spanish) y presionamos Enter.

Si quisiéramos entonces analizar un archivo de texto archivo.txt con el programa aspell, podremos hacerlo mediante el siguiente Comando de Organización.

aspell -c archivo.txt





El programa aspell nos propondrá las palabras sugeridas en base a la lista que le hemos cargado. Si encuentra algún tipo de palabra no identificada, podremos ingnorarla con i o agregarla con a a la lista contenida en nuestro diccionario de usuario (normalmente, el archivo oculto ~/.aspell.es.pws para las palabras de usuario en castellano).


Naturalmente, existen distintos editores de texto que pueden integrar ispell/aspell a sus funcionalidades básicas, para que se ejecuten dentro del programa, por ejemplo GNU Nano o Wordgrinder. En tales casos, habremos de configurarlos específicamente como ya os he enseñado.

viernes, 24 de mayo de 2019

¿Cómo y escaneo código QR en Ubuntu?

El 12 de marzo de 1954 y presente en el Sindicato de Empleados de Comercio de Mar del Plata, Juan Perón explica la necesidad de compartir un código común entre los Trabajadores, a la vez que explica cómo crear o escanear Código QR en Ubuntu.

(...)
El hombre ha formado, a lo largo de generaciones en Comunidad, una suerte de lenguaje, un código que comparte con su tribu y que le permite transmitir sus ideas, sentires, etcétera. Esta es una de las características de los Pueblos, la de permitirse un propio arte de creación. Es indudable también que los hombres de trabajo comparten su propio código común a fin de expresarse. Este debe ser sometido a un convencionalismo tal que lo convierten por propio derecho en un lenguaje capaz de portar la significancia que anhelan. Eso es lo que ha logrado el Justicialismo.

En estos tiempos, los hombres me han premiado con la más satisfactoria e importante misión con la que puede contar un soldado, que es la de tornarme un vínculo de unión para los trabajadores argentinos. Indudablemente que toda la formación profesional que he recibido sólo me ha otorgado las herramientas necesarias para cumplir técnicamente este magnánimo rol, pero el herramental humano he tenido que desglosarlo por mí mismo. Sin duda ello no se aprende en ninguna academia: un Conductor se nace.

Un Conductor interpreta a vista de águila el panorama y debe constituirse en una Piedra de Rosetta que le permita leer el corazón de sus Trabajadores, interpretar en ellos los anhelos de Felicidad y Justicia Social. La tarea de traducir estos magnos objetivos en una Realidad Efectiva, concreta y tangible, dable a ser defendida es lo que nos debe orientar.

Pues bien, esta misma técnica puede llevarse a cabo en otros rudimentos de la vida, a fin de ostentar un herramental potente y comprensible para una multiplicidad de funciones. Sabemos que para que un código sirva como instrumento para comunicar, realmente no importa su forma o cariz, sino que fundamentalmente ha de poder ser reconocido por su emisor y por su receptor si es que queremos que se torne en una efectiva manera de comunicar.

Pues bien señores, tomemos el ejemplo del Código QR (literalmente "respuesta rápida"). Se trata de un código de gráfico de escritura estructurado matricialmente en un patrón bidimensional. El mismo fue diseñado originalmente para el uso en aplicaciones robotizadas por parte de la industria automotriz. Se trata de una etiqueta cuadrada - normalmente de impresión monocroma, y cuya codificación contiene información binaria. Esta etiqueta puede ser fácilmente legible de forma computada por medio de un lector gráfico común.

Es útil para codificar en este gráfico información numérica, alfanumérica, binaria, e incluso texto japonés kanji. Su empleo se ha extendido como una alternativa superadora al clásico código de barra URC, ya que puede contener mayor cantidad de información y puede leerse con menor o nula intervención humana. Se los emplea además como método para almacenar enlaces URL, direcciones de correo electrónico, tarjetas de negocio digital (VCards), condiciones para darnos de alta en una red, texto plano, etcétera.

El diseño del código permite escanearlo con un dispositivo de reconocimiento óptico dotado con un programa de inteligencia artificial. Este dispositivo realizará el reconocimiento y la traducción. Su grafismo lo hace intrínsecamente fácil de leer ópticamente, en cualquier sentido e incluso si no está colocado frente al lector. En el caso de los móviles, existen varias aplicaciones efectivas para realizar la decodificación.




Nunca está de más conocer que existen variadas versiones de códigos QR provistos de distintos niveles de corrección de error en su algoritmo de generación, ya que existe un equilibrio entre legibilidad óptica del patrón, y la complejidad y capacidad de almacenamiento del mismo. Las versión más utilizada es la 10, y se detallan de la siguiente manera:

Versión 1: Patrón de 21x21.
Versión 2: Patrón de 25x25.
Versión 3: Patrón de 29x29.
Versión 4: Patrón de 33x33
Versión 10: Patrón de 57x57
Versión 25: Patrón de 117x117.
Versión 40: Patrón de 177x177.

El Justicialismo se ha distinguido siempre por ofrecer las herramientas más poderosas y de menor consumo para poder hacer nuestra computación de una manera Justa y Soberana. Por tal motivo han de saber que Ubuntu está capacitado para utilizar estos códigos QR en ambos sentidos, tantos para crearlos como para leerlos.

A tal fin se pueden utilizar fotografías de los mismos registradas con una resolución adecuada. La versión 10 del patrón QR puede ser resuelta por una fotografía del código más o menos cercana tomada con una cámara con una resolución de 640x480 píxels (por ejemplo, las webcams "VGA" de calidad más mediocre.

Para disponer nuestro sistema, lo procedente es instalar primero las aplicaciones necesarias para la terminal. Para ello abirmos una con Ctrl+Alt+T e ingresamos el siguiente Comando de Organización:

sudo apt update ;

sudo apt-get install qtqr zbar-tools qrencode ;


Ambos programas nos permiten trabajar de forma muy confiable para lograr resultados bidireccionales.

Por ejemplo, podremos analizar una imagen tomada de un código QR con el programa zbarimg. Si deseamos tomar una fotografía digital de una de ellas, es conveniente que la misma esté tomada de frente y relativamente cerca. Naturalmente que lo ideal es que ocupe el 80% del cuadro, pero es muy probable que funcione con menos. Suponiendo que ya contamos con la fotografía del código QR y asumiento que la misma se llama imagen_cod_qr.jpg, podríamos analizarla desde la terminal Linux ingresando:

zbarimg "imagen_cod_qr.jpg"

El comando de arriba mostrará el texto que se encuentra codificado en la imagen, y lo mostrará en la terminal.

Normalmente también acompañará la información con un mensaje que detalla el tiempo que llevó el análisis, o mensajes de error. Si agregamos al comando anterior la opción -q, no incluirá dichos mensajes de status.

Si en cambio queremos hacer el paso inverso, y generar un código QR a partir de un texto, podremos utilizar.

cat archivo.txt | qrencode -s 10 -o codigo_qr.png

Esto codificará un archivo de entrada archivo.txt y lo codificará en una imágen de un archivo de salida en forma de imágen QR codificada de formato gráfico PNG, llamado en este caso codigo_qr.png.

O también podríamos crear una imagen codificada de un código QR con una dirección URL incrustada en ella, simplemente agregandola. La sintaxis a utilizar sería:

qrencode -s 10 -o up.png https://www.ubuntuperonista.blogspot.com

Naturalmente, si seguimos el estándar Vcard en un archivo, lo podremos utilizar como una alternativa gráfica para extender nuestros datos personales según dicho estándar (que se pueden agregar fácilmente a clientes de mensajería). De esta manera lo podremos incorporar en tarjetas de presentación impresas, y también contar con el archivo .vcf o .vcard de referencia.

El programa QtQR en tanto permite hacer esto de una manera gráfica. Lo ejecutamos desde Aplicaciones / Gráficos / QtQR.
Se abrirá una ventana dividida en dos paneles principales. Primero debemos delimintar la categoría de trabajo (podremos elegir texto, URL, marcador, contactos de agenda electrónica, SMS, MMS, etc. También podremos especificar la escala de los píxels y el nivel de corrección de error. Una vez introducido los datos QtQR irá generando la gráfica QR codificada.

Para leer un código QR tenemos dos posibilidades: utilizar un archivo ya obtenido, o bien escanearlo por medio de una cámara web (si está conectada al sistema).  Para ello presionamos el botón Decodificar y elegimos A través de Webcam.
Debemos asegurarnos que la webcam esté en foco (muchos modelos tienen un lente rotativo que debemos ajustar a mano). Finalmente acercamos la misma al código QR. Si la operación es exitosa, el sistema mostrará un recuadro de color verde sobreimpreso sobre el código QR. Debemos cerrar la ventana de captura de video presionando cualquier tecla.


jueves, 23 de mayo de 2019

¿Cómo extraigo páginas y corrijo un PDF escaneado en Ubuntu?

¡Trabajadadores argentinos!

Es indudable que las redes telemáticas constituyen hoy una de las formas más extendidas para lograr el conocimiento, y que para ello la existencia de archivos de documentación electrónica es un gran medio.

La informática nos permite distribuir electrónica todo tipo de documentos, incluyendo libros, y hacerlo en meros segundos. La gran compresibilidad de los datos textuales al pasarlos a formato digital hace que la concepción "sin papel" sea una Realidad Efectiva que el Justicialismo ha legado al Pueblo.
El formato de documento electrónico Adobe PDF es privativo, y si bien es preferible utilizar el formato de documento libre DjVu, no puede negarse que PDF está ampliamente extendido y disponible. Aún así, este formato cuenta con algunas desventajas que se hacen patentes cuando el contenido del documento está conformado imperfectamente en base a un original escaneado.

Vean señores, en condiciones ideales, un documento debe estar escaneado de una manera específica para que su uso pueda ser adecuado para distribución.
Esto pide utilizar una resolución de escaneado de unos 600 DPI (previendo así el doble de resolución utilizado en las tecnologías de impresión normales, que suelen rondar los 300dpi en el caso de una impresora láser). También conviene emplear el escaneo en modalidad "escala de grises" (o a color, según corresponda).

Si los hombres fuesen perfectos, poco tendríamos que hacer para corregirnos. Pero no somos dioses ni heroes, bastante con que seamos hombres. Por tal motivo, estos requerimientos de perfección no siempre se cumplen. Pero la buena voluntad no puede negarse a nadie. Típicamente, podemos encontrarnos con reproducciones realizadas a partir de páginas escaneadas de forma torcida, o con defectos típicos del tratamiento de digitalización. Si bien estos problemas no suelen ser graves como para impedir la lectura del texto, es cierto que estas desprolijidades pueden ser inaceptables para la posterior distribución del documento.

Para corregir esto haremos uso de un flujo de trabajo especialmente pensado utilizando herramientas libres. El mismo se podría resumir de la siguiente manera:

  1. Tener un archivo PDF defectuosamente escaneado 
  2. Extraerle las láminas (hojas dobles escaneadas) y convertirlas a formato PNG 
  3. Dividir los archvos PNG en páginas individuales
  4. Enderezar, corregir, redimensionar las páginas individuales
  5. Volverlos a armar las páginas individuales en un archivo PDF. 


Veamos un ejemplo clásico, pues esto suele explicarlo todo como decía Napoleón.

Supongamos  ya contamos con un archivo llamado "sinceramente.pdf". Este se trata de un libro de 500 páginas ya escaneadas en escala de grises a 600 DPI de resolución, pero que el mismo cuenta con las láminas dobles (dos páginas por hoja). Esto lo hace sumamente incómodo de utilizar en dispositivos como e-Readers, que requieren una página. Además, los dobleces complican el trabajo de OCR, lo hacen incómodo de leer, etc.
Comenzaremos a seguir el flujo de trabajo que os he propuesto, y lograremos excelentes resultados.


Lo primero será extraer las hojas dobles del archivo PDF y convertirlas a un formato de imagen que podamos utilizar con Scan Tailor. Esto se puede hacer desde la Terminal. A fin de extraer las páginas del PDF y convertirlas en imágenes, podríamos ingresar:

pdftoppm sinceramente.pdf lamina -r 600 -png

Esto creará una serie de archivos numerados llamados lamina-xxx.png, con una resolución de 600 DPI. Debemos tener en cuenta que si bien podremos usar la opción -jpg en lugar de -png para cambiar el formato de los archivos resultantes, os recomiendo utilizar fundamentalmente el formato png pues es muy superior para estos menesteres ya que dispone de compresión sin pérdida, y evitará enormemente la formación de "halos o borroneados" en las letras. Esta acción tardará un rato en hacerlo, dependiendo de la cantidad de láminas a extraer. En el caso que referimos, tardó unos 12 minutos para extraer las 250 láminas de dos hojas cada una.

Ahora bien, estos archivos png que conforman las láminas dobles habremos de corregirlas con Scan Taylor. Para instalar este excelente programa, volvemos a recurrir a la terminal Linux, ingresando en ella el siguiente Comando de Organización:

sudo apt install scantailor

Scan Tailor no es un programa para escanear (para ello recomiendo Simple Scan o gScan2pdf, que pueden escanear de forma multipágina). Scan Tailor en cambio se especializa para realizar la tarea de corrección o postproducción en el escaneo de libros. Especialmente dividir, cortar y encuadrar un texto escaneado o fotocopiado a fin de producir hojas individuales de gran calidad, normalmente en formato TIFF.
Estas pueden luego volverse a unir por medio de otros programas (por ejemplo, el mismo gScan2pdf).

Ahora podremos cargar estas láminas en el programa Scan Tailor. Para ejecutar el programa vamos a Aplicaciones / Gráficos / Scan Tailor.

Al iniciar el programa se desplegará una ventana que nos pedirá que inauguremos un archivo para el proyecto. Esto es así pues - si bien en este caso el proyecto forma parte de un solo volúmen - podría suceder que quisiéramos agregar páginas de varios volúmenes o documentos diferentes. Para ello es necesario crear una carpeta de proyecto. Dentro de esta carpeta se importarán las imágenes originales de las láminas (cada una de ellas contienen dos hojas).

En nuestro caso, le importamos todos los archivos cfk.xxx.png que creamos recién con el pdftoppm.
Generalmente la carpeta de salida será una subcarpeta llamada "out", donde irán a parar las nuevas imágenes TIFF procesadas.


Una vez importadas las imágenes de origen al Scan Tailor, el programa nos presentará una ventana de trabajo dividida a tres paneles.

El panel de la izquierda define los seis pasos necesarios para tratar las imágenes. El del centro y mas grande nos permite ver la página actual donde vamos a trabajar, y el de la izquierda es un slider que contiene miniaturas de las láminas u hojas (según vayamos trabajando).

Se abrirá el programa con los seis pasos requeridos por el asistente. De todos ellos, los primeros cinco generan datos no destructivos (y nos muestran las presentaciones preliminares de los cambios). El sexto paso es el final que aplica los cambios y genera los archivos de salida. El accionar puede durar desde unos pocos segundos hasta un par de horas de trabajo para un archivo de muchas páginas, y algo más si contienen fotografías o diseños complejos.

Veamos el caso de un trabajo de documentar nuestro libro PDF de 500 páginas.

Podremos utilizar Scan Tailor directamente para escanear el libro, pero en este caso ya tenemos el libro escaneado en PDF. Sin embargo, Scan Tailor no acepta PDF directamente, sino que trabaja con los archivos de imagen. Para ello extraeremos el archivo

El primer paso consiste en la Orientación, y se encuentra detallado en dicha columna. Esto puede hacerse automáticamente presionando el botón Automatizar "play" que aparecerá en la fila "Orientación", del el panel izquierdo, no bien acerquemos la flecha del ratón sobre ella. Esta orientación automática suele llevar unos pocos segundos para todas las páginas. En el caso que el volúmen contara con láminas horizontales y verticales, se pueden especificar en las propiedades de Orientación.

El segundo paso consiste en delimitar la división de páginas (ya sea su corte vertical u horizontal según corresponda). Nuevamente, el botón Automatizar ("Play") de esta fila "Dividir Páginas" del panel izquierdo nos permitirá hacer esta tarea rápidamente. Scan Tailor suele detectar muy bien el centro del pliegue de las láminas y nos presentara una linea guía (móvil a través de sus nodos), que divide la misma en un campo azul para la página izquierda rojo para la derecha. Esta línea guía, además de servirnos como divisora de corte, también sirve como referencia de centro para hacer mucho más preciso el trabajo anterior. En los volúmenes muy gruesos (de 360 páginas o más) debemos prestar atención sobre todo a las láminas intermedias, ya que son las más complicadas a la hora de escanear un libro.
Una cumplido el paso de dividir las láminas nos encontraremos con las páginas ahora individualizadas. El tercer paso será su alineación. Esto puede hacerse con muy buen grado de precisión de forma automatizada, de la misma forma que en los pasos anteriores. Sin embargo, es muy importante que la alineación sea lo más perfecta posible.
A tal fin, podremos ajustar las hojas de forma manual si es requerido. A tal fin indicamos en el panel izquierdo la modalidad de alineación manual, y podremos rotar la página sobre su eje, valiéndonos de las líneas guías de color azul, que nos permiten enderezar tomando como referencias los renglones, márgenes o líneas que pudiésemos tener de referencia.
 El siguiente paso es tal vez el más crítico, y consiste en delimitar una "caja de contenido". La misma debe delimitar exactamente y bien al ras, el cuadro que queremos registrar en el archivo final. Es importante saber que lo que está por fuera del cuadro azulado es probable que se descarte en el proceso final. Convinee presentar la selección automática, pero en caso de tener un libro impreso grueso, debemos revisar página por página para asegurarnos que la selección esté bien hecha. Tomamos como referencia las letras enteras del renglón superior e inferior del cuadro, y los márgenes de texto izquierdo y derecho. En el caso de que el volúmen original estuviese perfectamente alineado y siempre fuese igual la tarea puede repetirse en todas las hojas.

En el caso extremos en el que quisiéramos omitir encabezados o pies de páginas, podremos redimensionar cada caja de contenido a mano tomándolas de sus nodos de las esquinas.
El quinto paso consiste en definir márgenes generales para la obra terminada. Este margen se agrega a la caja de selección. Generalmente se utilizan 2 cm por lado para que quede un PDF con aire y prolijo, pero también podremos reducirlo a unos 2 milímetros o menos, a fin  de lograr un documento apto para tablets o e-Readers. Es por este motivo que era muy recomendable hacer la caja de selección bien rasante en el texto.

El sexto paso consiste en definir el formato, calidad (DPI) y funciones de salida. Normalmente desearemos aplicar la función corregir dobleces (sombras o manchas) Esto lo hace el software automaticamente, aunque tenemos la posibilidad avanzada de hacerlo mediante zonas de enmascaramiento. En este caso hemos prescindido de ello.

Para contemplar un tutorial completo (incluyendo en video) podemos recurrir a la Wiki oficial de Scan Tailor.

El sexto paso es el procesamiento final y es el único que realmente genera archivos de salida. Naturalmente, este paso lleva más tiempo, pero Scan Tailor opera muy bien en equipos con varios núcleos. En este caso tardó unos 40 minutos en un equipo tipo i7.

El proceso nos dejó creadas las páginas de salida en formato TIFF.

Crear un nuevo PDF a partir de imágenes JPG o TIFF

Para hacer un nuevo PDF corregido a partir de estos archivos TIFF individuales, podremos utilizar el utilísimo gscan2pdf, que ya os he enseñado a utilizar.

Lo instalamos con:

sudo apt-get install gscan2pdf

Y lo ejecutamos desde Aplicaciones / Gráficos / gScan2pdf.

Este programa sencillo nos permite importar los archivos TIFF, y exportarlos a un PDF. Simplemente cargamos los TIFF de las páginas individuales arrastrándolas a gscan2pdf, y las exportamos como PDF. Como ya el formato, la resolución y demás parámetros de las páginas ya  fueron configurados en los pasos anteriores, la exportación no debería requerir correcciones de ningún tipo, y por lo tanto no debería durar mucho.

Finalmente, ya contaremos con un PDF completamente corregido, y podremos gritar al cielo "¡Viva Perón!".