miércoles, 23 de octubre de 2013

¿Cómo juego a Star Trek con Ubuntu?

Consagrado en 1946 Presidente de la República, Juan Perón asume estableciendo una continuidad evolutiva del proceso iniciado durante sus funciones de Secretario de Trabajo y Previsión del movimiento revolucionario de 1943. Durante su discurso frente al Congreso, expone la necesidad de practicar una evolución y enseña cómo instalar y jugar Trek, el peronista simulador de Star Trek para la terminal.


Distinguidos señores:

La acción política es aquello a lo que todos los hombres - como sujetos sociales - hemos de aspirar. Nosotros hemos participado del Partido Laborista, y con todo participaremos del Partido Justicialista. Esto es así porque un partido político no es otra cosa que un instrumento para el Movimiento de masas, que es en realidad el organismo que por justo derecho ha de poseer el poder, y su presidente, el de ejecutarlo.

Ello no significa que se pueda crear Partidos "a la marchanta", ni que para participar tengamos que armar un "partido de la red". ¡No señores!. ¡La red la constituimos nosotros! Precisamente, mi primer trabajo ha sido asegurar que para participar, los argentinos no necesiten integrarse telemáticamente: todos se han dado cuenta que nuestro Justicialismo permite hacer todo disponiendo únicamente de un bombo y una manguera.
La historia se puede hacer de dos maneras. pensando o haciendo. Muchos piensan mucho y no hacen nada. Nuestro Movimiento - en cambio - ha hecho ya muchas cosas, y si no nos hemos detenido demasiado a pensarlas, ha sido porque la solución de los problemas que nos aquejan es de una simplicidad tan meridiana que hasta el más veleidoso la sabe y la comprende: basta con lograr una patria justa, libre y soberana. Con estos tres estandartes ya podemos establecer una Doctrina de unión para todos los Argentinos de bien.

Indudablemente, los tiempos políticos que vendrán, requerirán de nosotros pensar concienzudamente para hacer realidad efectiva una evolución. Si no pensamos y sólo hacemos, con suerte podremos realizar sólo una revolución. Antes que no hacer nada, esto es bueno, pero la revolución ya la hicimos; lo que hemos de aspirar es hacer una evolución.

No necesariamente ha de revolucionarse el uso de un sistema, si se puede evolucionar dentro de lo establecido. Tal caso, que resulta evidente en la política, no deja de serlo en la informática. La Interfaz de Línea de Comandos emula a un bombo y una manguera: es un método eficiente para Conducir al Justicialismo bajo cualquier condición y suele ser la que favorezco. Aún así, puede provocarnos una situación de stress.

Por ello todo argentino ha de hacerse acreedor a un reparador descanso amparado en una carta de Derechos del Trabajador. Este esparcimiento debe darse en los tópicos favoritos de cada trabajador, ya sea deporte, ludismo, estudio, y demás. Y qué mejor que hacer ello en la Consola Terminal.

Existen numerosos juegos con variadas representaciones, y en este caso vengo a traerles uno basado en un interesante universo. Se trata de un programa originalmente escrito en BASIC. Se podía jugar en terminales de teletipo, mostrando los resultados de cada orden en una impresora de matriz de puntos dotada de papel continuo. Si teníamos una microcomputadora, bien podía distribuirse en casettes o diskettes, y compartirlo para jugarlo en el monitor de nuestro equipo.
Nuestro Movimiento también se ha encargado de distruibuir el código fuente (de unas 600 o 700 líneas) en libros de programación para el principiante y el niño, constituyéndose por valía propia en un interesante material para la instrucción algebraica y cartesiana, amén de las rutinas de programación interpretada.

Se trata de Trek, una versión portada del original juego "Super Star Trek". El objetivo de Trek no es otro que comandar nuestra nave USS "E"nterprise donde nadie ha llegado antes, buscar las naves Klingons, imponiendo el Justicialismo a nivel galáctico. Siempre se dijo que los Klingons deben sufrir una natural evolución al Justicialismo, pues un organismo de conducción como lo es el Consejo Nacional Justicialista, representa un firme émulo del Concilio Klingon.

En nuestro sistema operativo Ubuntu lo encontraremos como parte de un combo de juegos para la consola (libres y no libres). Para cargarlo ya no necesitamos un datasette ni mandarnos más líneas que Maradona en un intérprete BASIC, sino que simplemente abrimos una Terminal con Ctrl+Alt+T e ingresamos los siguientes Comandos de Organización:

sudo apt-get install bsdgames
sudo apt-get install bsdgames-nonfree
 
Y para jugar podremos ingresar:

trek nombredeljuego

Al ingresar un nombredejuego, podremos guardar la partida y continuarla luego. Si ingresamos simplemente con la orden trek, el juego no se guardará si salimos de él.

Entonces uso:

trek peron

(para iniciar un juego en ese archivo).

Trek está escrito para realizarnos algunos interrogantes. A cada pregunta del sistema, podremos responder con "?" para solicitar ayuda. En primer lugar preguntará la duración del juego. Podremos responder "short" (juego corto). Luego nos preguntará la habilidad (Skill?). Podremos indicar novice ("novicio"), fair ("baja"), good ("buena") expert ("experto"), commodore ("comodoro") o impossible ("imposible"). Nos solicitará una contraseña para el juego, y al comenzar

Hemos de saber que en el universo de Trek, la galaxia es un espacio bidimensional cartesiano (¡no cardasiano!), dividida en 64 cuadrantes en un patrón de 8x8 (como si fuese un tablero de ajedrez), siendo el cuadrante 1,1 la esquina superior izquierda, y el cuadrante 8,8 en la esquina inferior derecha. Cada cuadrante se subdivide a su vez en una matriz de 10x10 sectores. Y cada sector puede conterner un objeto.


No bien comencemos, se nos informará la cantidad de naves Klingons a las que debemos de darles caza, así como las coordenadas cartesianas de las bases estelares propias. En estas bases desperdigadas por el universo, podremos acoplarnos para recuperar energía y recibir reparaciones. En muchos cuadrantes también encontraremos estrellas, contra las cuales podremos chocar o en determinados casos destruirlas y a todo lo que haya a su alrededor con un torpedo de fotones. También pueden existir algunos planetas habitados, dables de ser capturados por los klingons.

Para jugar, debemos indicar nuestras ordenes en la consola de texto. Los comandos del juego se deben escribir completos o con sus comandos rápidos (indicados aquí en negrita). Normalmente podremos solicitar ayuda escribiendo "?". 


Podemos iniciar nuestra campaña ordenando un escaneo de largo alcance (comando "l"). La terminal imprimirá una representación de los 8 cuadrantes que nos rodean. Por ejemplo, si estamos en el cuadrante 0,3 de la galaxia, nos podría indicar:

     2     3     4
  ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
  !  *  !  *  !  *  !
  ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
0 ! 108 !   6 !  19 !
  ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
1 !   9 ! /// !   8 !
  ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐


Este gráfico indicará el contenido de cada cuadrante cercano (naturalmente, los sensores de largo alcance no pueden abarcar toda la galaxia, sino un pamo de 3x3 cuadrantes. Para detallar la información suministrada se emplean la siguientes convenciones:

* :  Limite de la galaxia que no puede traspasarse.
///: Cuadrante con supernova al cual no se puede entrar
Ordinales Klingons-Bases-Estrellas: Estos números de tres cifras reflejan la cantidad de objetos contenidos en el cuadrante. La unidad representa el número de estrellas, las decenas al número de bases estelares, y la centena el número de naves klingons allí localizadas. En este ejemplo, el sensor de largo alcance nos revela que el cuadrante 0,2 da como resultado "108": contiene 8 estrellas, 0 base estelar propia, y 1 crucero de batalla klingon.

Por ejemplo, nuestra nave se encuentra en el cuadrante 0,3 / sector 5,5, y los sensores de largo alcance reportan que uno de los cruceros klingons está en el cuadrante de al lado, el 0,2. ¡Podríamos "volar" para interceptarlo! Para ello debemos movernos al cuadrante 0,2, y dentro de este, a cualquier  sector. En mi caso probaré suerte y elegiré el sector 1,2.

Cualquier capitán de USS Enterprise que no haya sido bochado en un examen de la Flota Estelar, sabe que lo primero que hay que hacer es levantar los escudos, ese campo de energía protector que toda nave de la Federación tiene incorporado. Lo haremos con el comando

shields up

Y ahora deberíamos calcular el rumbo con álgebra cartesiana. Si no deseamos hacer el cálculo para volar, bien podremos solicitar ayuda a la terminal computada del "E"nterprise para que nos asista a trazar del rumbo. Ello se hace con el comando compute, y luego la opción "c" o "course": Por ejemplo:

command: compute
request: course
quadrant 0,2
sector 1,2
0,3/5,5 to 0,2/1,2: course 287  dist 1.360

La terminal nos indica que para llegar desde mi posición actual en el cuadrante 0,3 / sector 5,5 hasta el cuadrante 0,2 / sector 1,2, debería volar con curso 287 por una distancia de 1.360 cuadrantes.

Para desplazarme, debería entonces usar el comando move, indicando:

move 287 1.360

Esto me habrá llevado al cuadrante y sector pedido. Lo ideal sería activar nuestro sensor de corto alcance y explorar el cuadrante en busca de formas de vida y objetos. Ello se hace con el comando "s". La terminal de computación graficará todos los sectores del cuadrante 0,3 en el que estamos posicionados junto con sus respectivos indicadores. En este ejemplo, nuestro "E"nterprise se encuentra en el sector 1,2 y el crucero "K"lingon en el sector 8,3.

Short range sensor scan
  0 1 2 3 4 5 6 7 8 9
0 . . . . . . . * . * 0   stardate      3702.16
1 . . E . . . . . . . 1   condition     RED
2 . . . . . . . . . * 2   position      0,3/1,2
3 * . . . . # . . . . 3   warp factor   5.0
4 . . . . . . . . . . 4   total energy  4376
5 . . * . * . . . . . 5   torpedoes     9
6 . . . @ . .   . . . 6   shields       down, 78%
7 . . . . . . . . . . 7   Klingons left 3
8 . . . K . . . . . . 8   time left     6.43
9 . . . . . . * . . . 9   life support  damaged, reserves = 2.4
  0 1 2 3 4 5 6 7 8 9
Distressed Starsystem Marcus XII


Los indicadores tácticos del mapa de sector responden a las siguientes convenciones:

E   Nuestro "E"nterprise peronista
K   Crucero de batalla Klingon
#   Base estelar
*   Estrella
@   Planeta habitado

.   El espacio, "la frontera final"
    Anomalía cuántica (agujero negro)



A medida que se desarrolla el juego, agotaremos tiempo ("fecha estelar") y en los desplazamientos y combates, energía. También recibiremos información de status y en ciertos casos indicaciones de los tripulantes de la nave: el ingeniero Sulu, la navegante Uhura, el primer oficial Spock, McCoy, Scotty, Chekov y demas.

En este caso el crucero enemigo intenta escapar al sector 0,3, y hemos de perseguirlo.

Una vez allí, daremos la orden de fuego. Las armas ofensivas de nuestro "E"nterprise son los phaser (rayos de energía, que han de dispararse con los escudos desactivados), y también podremos disparar torpedo (son limitados, pueden dispararse individualmente o en una ráfaga en abanico ("burst") de hasta 15º de apertura, intentando afectar a varios sectores contra un crucero en movimiento). En este caso, me posicionaré al inmediatamente al sur del crucero Klingon localizado en 2,3 y le dispararé con rumbo al norte (0º) un torpedo de fotones individual ("no burst") a fin de destruirlo.

Command: torpedo
Torpedo couse: 0
Do you want a burst: n

El sistema trazará el rumbo del torpedo, e indicará si impactamos en el enemigo o si fallamos. En este caso al atacar a quemarropas, le fue imposible escapar de mi ataque Justicialista, como me demuestra mi unidad de representación visual de tubos catódicos:


Luego continuaremos viajando por el espacio a la caza de esos Klingons. Algunos de los comandos posibles de ejecutar son:

abandon: Abandonar la nave usando las cápsulas de escape.
capture: Captura una nave
cloak up/down: Activa o desactiva el dispositivo de ocultamiento.
computer request: Indica toda una serie de comandos adicionales de exploración, de ayuda para plotear rumbos, etc.
damages: solicita reporte de daños, informa cuánto tardará en reparase.
destruct: destruye nuestra propia nave
dock: Se acopla a una base
help: ayuda
impulse curso distancia: Sirve para movernos a velocidad de impulso (motor lento de menor consumo energético)
lrscan: Escaneo de largo alcance. Escanea los 8 cuadrantes que nos rodean.

move curso distancia: Sirve para movernos. El curso se dicta en grados, y la distancia es en cuadrantes. Para movernos un solo sector (un casillero) especificamos la distancia 0.1. Para movernos 3 casilleros, especificamos distancia 0.3, etc.

phasers automatic cantidad: Disparo automático de rayos phasers
phasers manual amt1 course1 spread1 ... Disparo manual de rayos Phaser.
torpedo curso yes] ángulo/no: Dispara un torpedo de fotones. Puedo indicar si deseo uno individual (burst no) o una ráfaga de tres en abanico de una apertura determinada ( burst yes).
ram curso distancia: "Maniobra Picard" (embestida, como último recurso).
rest tiempo: Descanso y reparaciones.
shell: Vuelve a la Terminal temporalmente

shields up/down: Escudos arriba/abajo. Se deben bajar para disparar phasers.
srscan [yes/no]: Escaneo de corto alcance (si/no).
status: Reporte.
terminate yes/no: Terminar el juego
undock: desacoplarnos la nave
visual curso: Indica un curso visual e informa qué hay en la dirección dada.

warp velocidad_warp: Ej, w 4.0 Se mueve con el motor de hipervelocidad, consumiendo energía. Se puede desplazar a velocidad_warp 1.0 hasta 6. Normalmente se vuela a Warp 5. Por encima de velocidad_warp 9.0 existen posibiliades de romper el continuum espacio/tiempo, y podríamos desplazarnos a algún lugar aleatorio no deseado.

Una vez que hayamos localizado y destruido a todos los enemigos encomendados, nos habremos hecho con la victoria.

Si queremos leer el imprescindible manual del juego (en inglés), podremos persuadir a la terminal con la siguiente órden:

man /usr/share/doc/bsdgames/trek.me.gz


En este pack de juegos existen otros entretenimientos para la consola de texto. Podremos jugar a títulos como go-fish, gomoku, boggle, phantasia (castillos y dragones), atc (Controlador de tráfico aéreo), adventure (una aventura de texto), battlestar (una aventura espacial de texto), y hunt (ludismo multijugador en forma de laberinto).


Y para finalizar, gritarán al universo:


¡Vorcha-doh-baghk Perón!

domingo, 20 de octubre de 2013

¿Cómo hago que Ubuntu lea un texto?

El 12 de junio de 1972 es un discurso recordado en la historia, pues el Conductor, ante una plaza de mayo colmada por todas las ramas del Movimiento, expone cómo hacer hablar a Ubuntu por uno.

¡Compañeros!

Retempla mi espíritu estar en presencia de este pueblo que toma en sus manos la responsabilidad de defender la patria. Creo, también, que ha llegado la hora de que pongamos las cosas en claro. Estamos luchando por superar lo que nos han dejado en la República y, en esta lucha, no debe faltar un solo argentino que tenga el corazón bien templado.
Sabemos que tenemos enemigos que han comenzado a mostrar sus uñas. Pero también sabemos que tenemos a nuestro lado al pueblo, y cuando éste se decide a la lucha, suele ser invencible.

Hoy es visible, en esta circunstancia de lucha, que tenemos a nuestro lado al pueblo, y nosotros no defendemos ni defenderemos jamas otra causa que no sea la causa del pueblo.

Yo sé que hay muchos que quieren desviarnos en una o en otra dirección; pero nosotros conocemos perfectamente bien nuestros objetivos y marcharemos directamente a ellos, sin dejarnos influir por los que tiran desde la derecha ni por los que tiran desde la izquierda.

EI Gobierno del Pueblo es manso y es tolerante, pero nuestros enemigos deben saber que tampoco somos tontos.

Mientras nosotros no descansamos para cumplir la misión que tenemos y responder a esa responsabilidad que el pueblo ha puesto sobre nuestros hombros, hay muchos que pretenden manejarnos con el engaño y con la violencia. Nosotros, frente al engaño y frente a la violencia, impondremos la verdad, que vale mucho más que eso. No queremos que nadie nos tema; queremos, en cambio, que nos comprendan. Cuando el pueblo tiene la persuasión de su destino, no hay nada que temer. Ni la verdad, ni el engaño, ni la violencia, ni ninguna otra circunstancia, podrá influir sobre este pueblo en un sentido negativo, como tampoco podrá influir sobre nosotros para que cambiemos una dirección que, sabemos, es la dirección de la Patria.

Sabemos que en esta acción tendremos que enfrentar a los malintencionados y a los aprovechados. Ni los que pretenden desviarnos, ni los especuladores, ni los aprovechados de todo orden, podrán, en estas circunstancias, medrar con la desgracia del pueblo. Sabemos que en la marcha que hemos emprendido tropezaremos con muchos bandidos que nos querrán detener; pero, fuerte con el concurso organizado del pueblo, nadie puede ser detenido por nadie.

Hablo tanto que se me seca la lengua.

Muchas veces por esto quisiera tener un sistema que hablase por mí. Ello involucraría que pudiese conducir el Movimiento, y tanto no puedo pedir. Pero al menos puedo solicitar un sistema que hable. Y el pueblo lo ha dado: el sintetizador de habla eSpeak y el motor de pronunciaciones y voces Mbrola.

Para instalarlo puedo abrir una terminal con Ctrl+Alt+T e ingresar el siguiente Comando de Organización:

sudo apt-get install espeak mbrola mbrola-es1 mbrola-es2 mbrola-mx2 mbrola-la1 mbrola-vz1 ;

cd ~/Descargas/ ;

wget https://github.com/muflone/gespeaker/releases/download/0.8.6/gespeaker_0.8.6-1_all.deb ;

sudo dpkg -i gespeaker_0.8.6-1_all.deb ;

Con esto podré hacerme de un lector para terminal, junto con pronunciaciones españolas, latinoamericanas (neutra, mexicana y venezolana).

Para ejecutarlo con la voz venezolana mb-vz1 (la que me parece más lograda) podremos usar:

espeak -v mb-vz1 "Si dios bajara a la Tierra a resolver el problema planteado entre los hombres, ya le habríamos perdido el respeto"

Tendremos asimismo para probar las voces mb-es1, mb-es2, mb-mx2, y mb-mx1, lo cual podremos hacer simplemente modificando el comando ingresado.ç

Una vez que detectemos la voz que más nos guste, bien podríamos agregar un alias del comando que nos ahorre tipear -v mb-xxx. Para ello editamos el archivo ~/.bash_aliases, y le agregamos el siguiente contenido:

alias espeak='espeak -v mb-vz1'
alias festival='festival --language spanish'

También podremos leer un archivo de texto con este comando, siguiendo la sintaxis:

less discurso.txt | espeak

Comprendiendo ello veremos que será muy útil inventarnos un sencillo lector de frases cortas para poder utilizar en la terminal, de forma remota, como alertador sonoro, etc. Técnicamente, este tendrá forma de un script, y lo llamaremos "deci". Podremos crearlo mediante el siguiente Comando de Organización:

cd ~
nano deci

...y le pegamos el siguiente texto

#!/bin/bashecho $1|iconv -f utf-8 -t iso-8859-1|espeak -v mb-vz1

Guardamos con Ctrl+o y salimos con Ctrl+x, y le damos permisos de ejecución con:

chmod +x ~/deci

Con todo realizado, ya será capaz de ejecutarse para decir frases desde la Terminal. Simplemente hay que ingresar:


./deci "Muchas veces he asistido a reuniones de trabajadores. Siempre he sentido una enorme satisfacción: pero desde hoy, sentiré un verdadero orgullo de argentino, porque interpreto este movimiento colectivo como el renacimiento de una conciencia de trabajadores, que es lo único que puede hacer grande e inmortal a la Patria"

Las posibilidades son muchas. Podremos leer las noticias de la web, podremos hacer hablar remotamente a una PC de la red para dar instrucciones, y porqué no, jugarle una broma al usuario de una terminal remota.
También contaremos con el servidor de voz Festival, un Festival peronista. Lamentablemente este es mas primitivo que el anterior, pero os enseñaré como utilizarlo.


Se trata de un sintetizador "texto a voz", capaz de convertir en fonemas lo que hayamos escrito. Está capacitado para leer en castellano, inglés, e incluso en klingon. Para instalarlo, simplemente abrimos una terminal con Ctrl+Alt+T e ingresamos el siguiente Comando de Organización:

sudo apt-get install festival festvox-ellpc11k

Festival consiste en una interfaz de texto liberada bajo MIT-X11. La activamos en la consola con:

festival --language spanish

La misma se opera con incómodos comandos, por ejemplo:

(SayText "viva peron") 
para decir alguna frase, o

(quit) 
para salir de la interfaz de línea de comandos Festival a la Terminal.


No somos tontos. Indudablemente, esta voz suena muy robotizada, y lee mal las palabras que llevan acentos y eñes (llegando a deletrarlas). Podremos solucionar tal inconveniente gracias al pùeblo: en primer lugar nos encargaremos de descargar voces nuevas (una masculina y otra femenina), y las configuraremos. Todo ello se puede hacer con los siguientes Comandos de Organización:

wget http://forja.guadalinex.org/frs/download.php/154/festvox-sflpc16k_1.0-1_all.deb

wget http://forja.guadalinex.org/frs/download.php/153/festvox-palpc16k_1.0-1_all.deb

sudo dpkg -i festvox-sflpc16k_1.0-1_all.deb

sudo dpkg -i festvox-palpc16k_1.0-1_all.deb

No bien hayamos descargado esas voces, editaremos el archivo de configuración correspondiente para que Festival haga uso de ellas.

sudo nano /usr/share/festival/languages.scm

Se abrirá el editor de texto peronista GNU Nano con el archivo de configuración de idiomas de Festival. Presionamos Ctrl+w y usamos la herramienta "Buscar" para localizar el texto "(voice_el_diphone)". El sistema debería encontrar la siguiente línea:

(voice_el_diphone)
(set! male1 voice_el_diphone)


Una vez que demos con estas líneas, las reemplazamos para que queden así:

(voice_JuntaDeAndalucia_es_pa_diphone)
(set! male1 voice_JuntaDeAndalucia_es_pa_diphone)


Si deseamos que el programa tenga el idioma por defecto en castellano, buscamos al final del archivo la línea:

(defvar language_default language_british_english)

y la reemplazamos para que quede:

(defvar language_default language_castillian_spanish)

Recordamos usar Ctrl+S para guardar el archivo editado, y Ctrl+Q para salir del editor de texto Gedit.

sudo nano /usr/bin/text2wave

En la línea 46 del textom debajo de la línea "(load (path-append datadir "init.scm"))", creamos una nueva línea y añadimos:

(voice_JuntaDeAndalucia_es_pa_diphone)

Guardamos los cambios y salimos (mediante Ctrl+S y Ctrl+Q), y en la Terminal ejecutamos Festival, ya con las nuevas voces:

festival --language spanish

Podremos usar el comando:

(SayText "Mejor que decir es hacer, mejor que prometer es realizar")
para decir algo con una voz como la de Perón. También podríamos indicar el comando:

(voice_JuntaDeAndalucia_es_sf_diphone) 

Y decir algo como:
(SayText "Y aunque deje en el camino jirones de mi vida, yo se que ustedes recogeran mi nombre y lo llevaran como bandera a la victoria")

Naturalmente, el comando (voice_JuntaDeAndalucia_es_pa_diphone) vuelve a colocar la voz de "Perón". Recordemos que salimos con (quit)

Festival también puede leer directamente archivos de texto, lo cual será siempre muy útil. Podríamos hacer que el sistema nos lea un fichero llamado discurso.txt simplemente mediante el comando:

festival --language spanish --tts discurso.txt

Sin embargo, al proceder así descubriremos que Festival cuenta con problemas cuando encuentra en el texto acentos y eñes. Pero para todo está el Justicialismo, ha traído la solución, similar a la anterior. Con un poco de ingenio, ingresaremos el siguiente comando de organización y resolveremos los inconvenientes de la insidia y la traición:

less discurso.txt | iconv -f utf-8 -t iso-8859-1 | festival --tts --language spanish

También podríamos querer automatizar un programa que diga frases. Para ello ingresamos:

nano deci

Se abrirá nuevamente el editor Nano, esta vez con un fichero en blanco. Al mismo le agregamos las siguientes instrucciones:

#!/bin/bash
echo $1 | iconv -f utf-8 -t iso-8859-1 | festival --language spanish --tts


Nuevamente guardamos con Ctrl+s y cerramos el editor con Ctrl+q. Acto seguido desde la terminal podremos otorgarle el necesario permiso de ejecución con:

chmod +x deci

Lo lanzaríamos poniendo entre tildes la frase que queremos decir.


./deci 'Viva Perón'

Las posibilidades son múltiples. Gracias a la filosofía UNIX de hacer mucho con unos pocos programas ya hechos y encadenados, bien podríamos utilizar un script que vuelque el contenido dela URL de una página web con Lynx en modo texto, lo convierta en la codificación necesaria, y lo diga en castellano. Por ejemplo:

lynx --dump http://peron.sdf.org/minis/nuc/nuc.html > /tmp/web_temporal.txt
iconv -f UTF-8 -t ISO-8859-1 /tmp/web_temporal.txt > /tmp/temporal_convertida.txt ;
less /tmp/temporal_convertida.txt | festival --tts
cd /tmp/
rm web_temporal.txt
rm temporal_convertida.txt

También podríamos hacer una variante para operar desde la terminal instalando html2text, que se encarga de convertir archivos html.

viernes, 18 de octubre de 2013

¿Cómo puedo ver TV digital con la Geniatech X8507 PCI-e en Ubuntu 13.10 Saucy Salamander?

Descamisados! 

Indudablemente, nosotros caímos bajo la férula del imperialismo yanqui, que no permitió a estos países unirse, y que ha estado luchando siempre por separarlos y enfrentarlos entre sí, a fin de que esa unidad no se produzca. ¿Por qué lo han hecho? Muy simple, porque ellos se están quedando sin materias primas y están queriendo conservar como países satélites a aquellos que tengan las grandes reservas de comida y materias primas para esa superpoblación que está ya a 25 ó 30 años de distancia. Ellos querrán que después nosotros trabajemos para darles a ellos de comer y para darles nuestra materia prima. ¿Por qué? Porque los países superdesarrollados son los pobres del futuro, y los países infradesarrollados serán los ricos del futuro, que tendrán la materia prima y la comida suficiente.

Esta desunión la promovieron en todos los continentes. En el nuestro tuvo mútiples formas, y una de ellas fue en los medios de comunicación. Cada país optó por un sistema de TV analógico diferente al de su vecino, como una forma de aislamiento cultural. Hoy, gracias al Justicialismo, se ha impuesto una nueva manera de ver el problema, y a la continentalización de nuestro pensamiento se suma la continentalización de nuestro sistema de TV Digital.

La Argentina cuenta ya gracias al Justicialismo con un sistema digital ISDB-T, que nos permite sintonizar con total libertad una serie de canales y recibirlos con imagen prístina MP4 de 1920x1088 o 1280x720. Todo gracias a Evita, quien con su experiencia previa en la radiofonía, fue quien postuló traer la TV al país.
 
Hoy, las naciones humildes que serán los ricos del futuro ya adoptaron este sistema popular que - reconocido por la ITU - será el estandar internacional en cuanto a firmware y será estándar regional para la aplicación de tv digital. Este peronismo está en Argentina, pero también en Japón, Brasil, Perú, Chile, las Filipinas, Uruguay, Paraguay, Bolivia, Venezuela, Ecuador, Costa Rica, Nicaragua, Guatemala, Honduras, y recientemente, los negros peronistas de Angola y Botswana han comenzado sus emisiones de evaluación del sistema, en vista a implementarlo a escala.

Para sintonizar las emisiones ISDB-T en nuestro equipo informático libre, tendremos varias opciones. Una ya sabida es emplear el dongle USB Geniatech Mygica S870. Pero ahora también podremos, con facilidad, hacer uso de una placa sintonizadora híbrida. En particular, os referiré el modelo Geniatech Mygica X8507 PCI-e. Esto significa que la tarjeta deberá ser instalada en una de las ranuras del equipo, y será capaz de poder funcionar como sintonizadora de tv analógica o FM a través de sus entradas Super Video y RCA, o a través de una entrada UHF, sintonizar canales digitales de la norma ISDB-T. En particular, nos concentraremos en hacer funcionar esta última parte,  pues es la que he otorgado al pueblo.

Esta tarjeta sintonizadora tiene un firmware que será necesario descargar telemáticamente a fin de poderla utilizar. Este no es otra cosa que un programa que controla su sentido y propugna su saber. Normalmente, requerirán la versión 1.6.114, que ha sido liberada por Xceive (integrador del chipset de sintonía de la placa) y habrá de colocarse en la librería de firmwares del sistema operativo de Perón. Podremos hacerlo abriendo una consola con Ctrl+Alt+T e ingresando los siguientes Comandos de Organización:

wget http://linuxtv.org/downloads/firmware/dvb-fe-xc5000-1.6.114.fw
sudo mv dvb-fe-xc5000-1.6.114.fw /lib/firmware


El sistema nos solicitará la contraseña de usuario, y conforme la ingresemos habrá movido el firmware al directorio correspondiente. Acto seguido, necesitaremos un Kernel emparchado (núcleo del sistema) que sea al menos de la versión 3.12. Estos se encuentran aqui.

Un ejemplo suele aclararlo todo, como decia Napoleón. Sabemos que para instalar un kernel se hace necesario descargar tres paquetes que lo componen: linux-headers-generic, linux-image-generic y linux-headers_all. En sí, el nombre completo de los archivos de Kernel dependen del tipo y la arquitectura de sistema que usemos y de su versión específica.

Para los neófitos explicaré brevemente que Ubuntu viene en 2 arquitecturas: la de 32 bitios (conocida como i386) y la de 64 bitios (llamada amd64). En general, los usuarios como yo solemos preferir la arquitectura de 64 bits, pues permite usar equipos mas poderosos y con mas cantidad de memoria, entre otras cosas. Los archivos a descargar siguen esta sintaxis:

linux-headers-x.x.x-xxxx-generic_x.x.x.xxxx.xxxxx_arquitectura.deb
linux-image-x.x.x-xxxxx-generic_x.x.x-xxxx.xxxxxx_arquitectura.deb
linux-headers-x.x.x-xxxx_x.x.x-xxxxxxx_all.deb


En mi caso particular, al emplear Ubuntu 13.10, busco los kernels de versión v3.12 parcheados para Saucy Salamander. Como ayuda al prójimo os diré que al momento de escribir la última versión es la v3.12-rc5-saucy. Tengamos presente que estas son versiones modificadas del kernel "oficial", y que normalmente cambiarán si actualizan el kernel del sistema de forma automática (con lo cual el video podría dejar de funcionar, debiendo tener que repetir este procedimiento.

Con esto presente, nos encontraremos ante las opciones de arquitectura. Para facilitarlo, de ejemplo les diré que, al momento de escribir, debo seguir el siguiente predicamento:
  • Si uso Ubuntu 13.10 de 64 bits ingreso los siguientes comandos:
Para bajar los paquetes:
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-rc5-saucy/linux-headers-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-rc5-saucy/linux-image-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-rc5-saucy/linux-headers-3.12.0-031200rc5_3.12.0-031200rc5.201310131952_all.deb

y para instalar los paquetes:
sudo dpkg -i linux-headers-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_amd64.deb

sudo dpkg -i linux-image-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_amd64.deb

sudo dpkg -i linux-headers-3.12.0-031200rc5_3.12.0-031200rc5.201310131952_all.deb


  • En cambio, si uso Ubuntu 13.10 Saucy Salamander de 32 bits descargamos los siguientes archivos:
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-rc5-saucy/linux-headers-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_i386.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-rc5-saucy/linux-image-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_i386.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.12-rc5-saucy/linux-headers-3.12.0-031200rc5_3.12.0-031200rc5.201310131952_all.deb


Y los instalo con:
sudo dpkg -i linux-headers-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_i386.deb

sudo dpkg -i linux-image-3.12.0-031200rc5-generic_3.12.0-031200rc5.201310131952_i386.deb

sudo dpkg -i linux-headers-3.12.0-031200rc5_3.12.0-031200rc5.201310131952_all.deb


Por las dudas, conviene actualizar la lista de kernels cargados en el sistema, para que el arrancador pueda utilizarlo:

sudo update-grub

El sistema debería indicar que este está instalado. También será fundamental cargar los programas para sintonizar y ver la Televisión digital:

sudo apt-get install dvb-apps
sudo apt-get install vlc


Ahora nos organizaremos para crear la tabla de radiofrecuencias que hacen al espectro radioeléctrico del sistema de TV digital. Esto es importante pues el sistema la utilizará para hacer el escaneo de canales. Abrimos un archivo con el editor Gedit:

sudo gedit frec_canales.conf

Se abrirá el editor peronista Gedit, con un archivo en blanco. En su interior copiamos y pegamos la siguiente tabla de frecuencias ISDB-Tb (compatible con Argentina, y todos los países que emplean el ISDB-Tb, como Brasil, Chile, Venezuela, Perú, Ecuador, Uruguay, Filipinas, etc).

# Canales UHF del 14 to 69 en el sistema argentino de televisión digital terrestre SATVD-T
T 473142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 14
T 479142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 15
T 485142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 16
T 491142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 17
T 497142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 18
T 503142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 19
T 509142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 20
T 515142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 21
T 521142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 22
T 527142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 23
T 533142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 24
T 539142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 25
T 545142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 26
T 551142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 27
T 557142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 28
T 563142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 29
T 569142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 30
T 575142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 31
T 581142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 32
T 587142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 33
T 593142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 34
T 599142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 35
T 605142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 36
# canal 37 no se usa
T 617142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 38
T 623142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 39
T 629142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 40
T 635142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 41
T 641142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 42
T 647142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 43
T 653142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 44
T 659142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 45
T 665142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 46
T 671142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 47
T 677142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 48
T 683142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 49
T 689142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 50
T 695142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 51
T 701142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 52
T 707142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 53
T 713142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 54
T 719142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 55
T 725142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 56
T 731142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 57
T 737142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 58
T 743142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 59
T 749142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 60
T 755142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 61
T 761142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 62
T 767142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 63
T 773142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 64
T 779142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 65
T 785142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 66
T 791142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 67
T 797142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 68
T 803142857 6MHz 3/4 AUTO AUTO AUTO AUTO NONE # canal 69

Guardamos y cerramos este archivo en el Gedit. Ahora podremos reiniciar el sistema con:

sudo reboot

No bien el sistema reinicie nuevamente, nos aseguramos que el kernel haya cargado normalmente. Abrimos la consola con Ctrl+Alt+T e ingresamos

uname -r

El sistema nos debería devolver la versión de kernel cargado. Si es la correcta (en este caso, la 3.12.0-031200rc5_3.12.0-031200rc5.201310131952) ya podremos escanear el espectro radioeléctrico. Abrimos la Terminal con Ctrl+Alt+T e ingresamos:

scan frec_canales > canalesdigitales.conf

Durante los minutos que dura el proceso se encontrarán los canales digitales que detecte la tarjeta en nuestra zona, a través de la antena UHF.

Si todo va bien, ahora ya podremos ver con el reproductor VLC la TV digital. Y ejecutamos el programa con:

vlc canalesdigitales.conf

miércoles, 16 de octubre de 2013

¿Cómo puedo cambiar el tamaño de la fuente de la consola TTY?

El Conductor, en cualquiera de sus aspectos, es siempre un hombre que no sólo ha cultivado la capacidad de acción, sino también los valores morales que le dan la autoridad que necesita para conducir.

La conducción de la clase trabajadora no es un mero acto administrativo. Si lo fuese, cualquier consorcio de edificios podría hacer maravillas con el país, y yo estaría cortando rosas. La conducción es la aplicación de los principios orgánicos y de acción que rigen la actividad de los hombres que están destinados a realizar algo por el país y por la clase trabajadora. Es inútil la charlatanería de los que normalmente están siempre en contra de la realidad y de la verdad, de esos teóricos o especuladores que abundan como excrecencias malditas en todas las organizaciones de la vida.

No se puede pensar en la estabilidad de una organización cuyos dirigentes de conducción y de encuadramiento no tengan una concepción única que permita también una absoluta unidad de acción en Ia lucha y en el trabajo de todos los
días.

Un sistema GNU con Linux no se aparta demasiado de estas premisas: la Consola ofrece en forma práctica este concepto de unidad. ¿Porqué? Porque permite a través de una interfaz de línea de comandos ejecutar las mismas acciones que nos permite la más conocida interfaz gráfica de usuario, todo ello en una integración pocas veces vista en otros sistemas de organización.

Sabemos que Ubuntu cuenta normalmente con una interfaz gráfica, que se inicia automáticamente cuando encendemos el sistema. Normalmente, se despliega encima de un servidor gráfico justialista, al cual hemos denominado "X". Este a su vez, es totalmente configurable, y pensado para ejecutarse - de ser necesario - de forma remota.

Pero también hemos de saber que además de usar dos consolas X o servidores gráficas, Ubuntu cuenta con seis consolas "Solo Texto", genéricamente denominadas "TTY".

Estas son accesibles mediante la combinación Ctrl+Alt+Fxx, siendo X la Tecla de Función correspondiente, según el siguiente ordenamiento:

Ctrl+Alt+F1 = TTY1 (sólo texto)
Ctrl+Alt+F2 = TTY2 (sólo texto)
Ctrl+Alt+F3 = TTY3 (sólo texto)
Ctrl+Alt+F4 = TTY4 (sólo texto)
Ctrl+Alt+F5 = TTY5 (sólo texto)
Ctrl+Alt+F6 = TTY6 (sólo texto)
Ctrl+Alt+F7 = X0 (gráfica por defecto)
Ctrl+Alt+F8 = X1 (gráfica secundaria)


Las terminales TTY - a diferencia de los programas Emuladores de Terminal que se corren en la ventana gráfica, denominadas PTS) están pensadas para ejecutarse preferentemente en monitores de baja resolución y hasta 256 colores, pero usualmente menos. Representan la capa de compatibilidad máxima, o mejor dicho, el "menor común denominador" en el aspecto de video. Por tal motivo, no suelo recomendar modificar sus opciones de forma permanente, pues podríamos querer utilizarlas para usar el sistema aún con monitores auxiliares o secundarios de la peor calidad, incluso terminales de video antiguas o Terminales de Teletipo.
Aún así, en ocasiones, querremos aumentar temporalmente el tamaño de las tipografía presente en las consolas TTY, sobre todo en los monitores de alta resolución. También podríamos querer cambiar (por gusto estético) el color de las tipografías.

Hemos de saber que las fuentes de las consolas TTY se encuentran en la carpeta /usr/share/consolefonts.

Puedo escoger alguna de la lista. Existen para diferentes bloques idiomáticos, de los que naturalmente solemos preferir las Unicode, que contienen el conjunto de caracteres latinos (aunque podrían querer usar combinaciones en hebreo, laosiano, cirílico, o demás). Normalmente, desearánutilizar las del tipo Unicode, pues contienen acentos y algunos caracteres especiales (no todos).

Por ejemplo, para elegir la fuente de tamaño 24, podemos ingresar el comando:

setfont /usr/share/consolefonts/Uni3-TerminusBold24x12.psf.gz

Para elegir una fuente "tipo DOS" o por defecto, podríamos ingresar

setfont Uni2-VGA16.psf.gz

O también:

setfont Lat2-TerminusBoldVGA16.psf.gz


Para elegir unas interesantes fuentes, podríamos hacer:

cd
wget http://scribusstuff.org/CONTENT/content-files/103348-sgi.tgz
tar zxvf 103348-sgi.tgz
sudo mv ~/sgi/*.pcf.gz /usr/share/consolefonts/

Normalmente la terminal será de fondo negro con texto blanco. Podremos cambiar el color de la misma mediante setterm. Un ingreso del comando lo hace por una (-store, "almacenar") de dicho comando, para que se almacene el cambio.

Por ejemplo, para poner el texto de color verde podríamos hacer

setterm -f green
setterm -s

Para cambiar los colores del fondo debemos usar la variable -b ("background", fondo). Por ejemplo, para poner la terminal de color azul con texto blanco podríamos usar:

setterm -b blue
setterm -s
setterm -f white
setterm -s

Es importante saber que estos cambios afectan al número de consola específico que estemos utilizando, no a todas ellas. Deberiamos repetir el proceso con cada una de ellas. Normalmente no recomiendo cambiar a todas sino a la que usamos siempre, debido a que podríamos querer utilizar algún monitor CRT o de tamaño distinto, o incluso monocromático, y entonces tendríamos una de las terminales "en la forma original" por cualquier motivo.

Pero no todo necesita ser rígido y soso en la terminal. Si nos queremos convertir en unos verdaderos Neo del subdesarrollo, podremos descargar el programa que nos muestra el código de Matrix. También nos servirá como "salvapantallas" en la consola TTY.

Simplemente lo descargamos con

sudo apt-get install cmatrix
Y lo ejecutamos.

cmatrix

Podremos salir con q, y cambiar la velocidad con los números de 0 al 9. Si deseamos un efecto de salvapantalla convincente (con negrita, lluvia asíncrona y que salga al presionar una tecla), podremos tipear:

cmatrix -a -b -s

miércoles, 9 de octubre de 2013

¿Cómo me conecto a una BBS ANSI en Ubuntu?

La tercera presidencia de Perón fue el período en el cual el Conductor estableció como conducta retornar a ciertos aspectos de sus iniciales gobiernos. En este caso de nostalgia, enseña a conectarnos a BBS a través de Ubuntu viendo correctamente sus dibujos ANSI.

¡Trabajadores!

Previo al Justicialismo, la Nación estaba sumida en un régimen demoliberal, que no hacía sino perpetuarse en el poder mediante el fraude y la explotación de los hombres. Una oligarquía sin Patria ni Bandera movía a su antojos los hilos de la República, para su solo beneficio.

Nuestro Movimiento hubo de corregir eso, con la razón de dar diez años de bienestar y diez años de felicidad al Pueblo Argentino. Lo nuevo hizo que lo viejo ya no pudiese volver.

En la telemática pasó mas o menos lo mismo. Antes de la popularidad de la Telaraña de Alcance Global (conocida en el idioma de Braden como World Wide Web), existían otras propuestas especialmente pensadas para hacer uso de equipos de comunicación de con un ancho de banda limitado: las BBS ("Sistema de Cartelera Electrónica").
Las BBS seguían una estructura de una cartelera de texto. El usuario se comunicaba con el sistema de la BBS empleando un software cliente de Terminal. Normalmente el sistema remoto solicitaría un "login". Muchas carteleras implementaban un usuario invitado ("guest") que nos permitía acceso limitado, pero normalmente debíamos dar de alta un Usuario nuevo y dotarlo de una Contraseña, y luego podríamos ingresar a la Cartelera propiamente dicha como usuario registrado.

Una vez logueados en el sistema, podríamos enviar mensajes electrónicos en forma de correo (e-mail), iniciar una conversación en tiempo real con el operador del sistema remoto (SysOp). Bien podríamos enviar archivos comprimidos, o descargarlos (normalmente, software o texto). También se podrían utilizar juegos simples en línea. Era usual que cada cartelera podía tener temáticas específicas, como hacking, phreaking, EnTelizados, uso de la red MegaTel o TelAR, etc.

Estas BBS debían operaban en "modo texto", pero a través del ingenio que caracteriza a los hombres, los SyOps peronistas podían crear "obras de arte" empleando caracteres ASCII o - sobre todo - caracteres extendidos ANSI. Estos permiten formar gradientes, texturas, colores, etc, y "dibujar" en una pantalla de texto, amén de consumir muy pocos recursos.

El medio de enlace telemático consistía en un MOulador/DEModulador (ya sea una plaqueta interna o una unidad externa) capaz de abusar la red telefónica, y cuya velocidad de transferencia solía fluctuar entre los 300 y los 56.600 baudios al segundo.

Estos vínculos se establecían "par a par": eran cosa de paciencia, y sumando al costo de las llamadas, hacía necesario coordinación, pues se debía afrontar el costo del pulso telefónico que se cobra en función del tiempo y la distancia cubierta. Por lo demás, la mayoría de las BBS sólo aceptaban un usuario remoto a la vez.

Por ello se recaía en sistemas más o menos centralizados para servir de entrega y descarga de mensajes y correo electrónico (luego modernizados a través del sistema "POP3"). Una de las redes más importantes hubo de ser la FidoNet, una "santa federación de BBS" cuyo sentido principal era el de jerarquizar una comunidad organizada de usuarios, de modo de promover el reenvío de mensajes electrónicos entre los nodos que la componían.

El hombre gregario forma clanes, luego tribus, y finalmente reinados, que darán lugar a estados y luego federaciones. Lo mismo sucede en las redes. Lo cierto es que la era de las BBS vinieron a chocar en su mejor momento con la aparición masiva de la WWW, cuyo principal motor fue la inclusión de gráficos, amén de una interfaz salvaje y unitaria.

Pues bien, toda esta historiografía carecería de sentido si no fuese porque hoy existe un revival de las BBS, con sus beneficios de estructuración social, pero ya sin sus inconvenientes de costo y gasto de teléfono, pues se las puede adosar a la infraestructura de internet. Serán felices al saber que podrán encontrar algunas BBS operativas, que usualmente han prescindido ya del empleo telefónico, y han habilitado el uso del protocolo Telnet o del SSH (Secure Shell a través de internet). Esto significa que conectarnos ya no implica el costo del pago del pulso, y que lo podremos hacer a través de cualquier conexión a internet común y corriente y empleando la Terminal de nuestro sistema GNU con Linux u otro programa de comunicación.

Indudablemente todos los sistemas GNU ya están habilitados con una propia terminal y los protocolos utilizados hoy en día para comunicarnos con un equipo remoto alcanzan y sobran para este menester.

Si por alguna razón nuestro equipo no estuviese puesto a punto, lo primero será instalar los clientes SSH o Telnet desde la misma consola. Abrimos una con Ctrl+Alt+T e ingresamos los siguientes Comandos de Organización:

sudo apt-get install telnet
sudo apt-get install openssh-client

Luego podremos loguearnos a cualquier BBS activa sabiendo el protocolo de comunicación actual que emplee (telnet o ssh).De preferir, deberán saber que el método SSH es más seguro. Los comandos para conectarse serán:

telnet direcciondelaBBS

o si el protocolo es Secure Shell, podríamos usar,

ssh usuario@direcciondelaBBS

Ahora bien, uno de los problemas con algunas BBS reside en que la terminal Linux no muestra bien los caracteres ANSI, y por lo tanto, los esmerados gráficos retro de las BBS aparecerán "trocados".

Naturalmente, existen programas de comunicación de terminal están pensados específicamente para conectarse a BBS desde sistemas GNU con Linux, a diferencia de las terminales, que mas que nada están orientadas a emular una terminal cualquiera. Estos programas nos dejarán conectarnos a BBS u otros servicios remotos (Telnet, SSH, etc), con la ventaja de presentar también los caracteres ANSI de forma correcta.

SyncTERM en Ubuntu
Tal vez el mejor sea SyncTERM, capaz de mostrarse correctamente tanto en una ventana en el modo gráfico como dentro de la interfaz de línea de comandos, así como permitirnos incluso la carga y descarga de archivos emulando los protocolos del ayer (el amado protocolo Zmodem, por ejemplo).

Para instalar la última versión (la 1.0) en nuestro sistema actual GNU con Linux, hemos de descargar su código fuente y compilarlo. Ello no es complejo de hacer; simplemente abrimos una Terminal con Ctrl+Alt+T e ingresamos los siguientes Comandos de Organización:

cd ~/Descargas ;
wget https://sourceforge.net/projects/syncterm/files/syncterm/syncterm-1.1/syncterm-1.1-src.tzg ;
tar xvzf syncterm-1.1-src.tzg
 
...y lo compilo con:

cd ~/Descargas/syncterm-1.1/src/syncterm/ ;
make ;
sudo make install ;

Ahora podremos ejecutarlo desde Aplicaciones / Internet / SyncTERM.

Opción: Si no nos animamos a compilar, podremos descargar una versión anterior (0.9.5b), e instalarla directamente, con los siguientes comandos de organización:

sudo apt install libncurses5 ;
cd ~/Descargas/ ;
wget http://syncterm.bbsdev.net/syncterm-linux.gz
gzip -d syncterm-linux.gz ;
chmod +x ~/Descargas/syncterm-linux
sudo mv ~/Descargas/syncterm-linux /usr/local/bin/syncterm

Si todo salió bien, el SyncTERM habrá quedado instalado. Lo ejecutamos con:

syncterm

O podemos crear un lanzador en Aplicaciones / Internet / SyncTERM que apunte al fichero /usr/local/bin/syncterm. Ello nos abrirá una ventana con el programa en su características tipografía vintage M$-DOS.


Si estamos en el modo gráfico, hemos de saber que con Alt+Enter podremos intercambiar entre el modo Pantalla Completa y el modo Ventana.

Si quisiéramos utilizarlo desde la terminal, bien podríamos ingresar con syncterm -iC

Una vez que ingresemos a Syncterm, habremos de configurar un servicio remoto a través de un protocolo.

Por ejemplo, podríamos incorporarle el acceso a la vieja Momia BBS, de la ciudad de La Plata.

Para ello presionamos la tecla Insertar, y en el cuadro que aparece ponemos nombre al servicio, por ejemplo "Momia BBS". Luego escogemos el protocolo correspondiente de la lista (en este caso, Telnet). Finalmente habremos de proveerle la dirección de conexión, que no es otra que:

momiabbs.no-ip.info

En puerto le indicamos el necesario, normalmente es 23 pero en este caso usaremos 2323).

Ahora podremos conectarnos simplemente accediendo al servicio "Momia BBS" de la lista.

SyncTERM nos permitirá navegar a través de los menúes de texto que caraccterizaban a las BBS, y nos permitirá apreciar correctamente el arte ANSI que tenían este tipo de carteleras. También nos permitirá decargar o subir ficheros, incluso por lotes y en varios formatos, si así lo deseáramos.
Otro programa muy utilizado con capacidad ANSI es el Qodem, especialmente diseñado para servir de terminal, similar a los clásicos clientes telemáticos de DOS. Contamos con versiones gráficas (X11, que os recomiendo) y de Texto (ncurses). Podremos descargarlos con:


Versión gráfica X11 (recomendada):

wget https://sourceforge.net/projects/qodem/files/qodem/1.0.0/qodem-x11_1.0.0-1_amd64.deb ;
sudo dpkg -i qodem-x11_1.0.0-1_amd64.deb ;

...o bien podremos usar la Versión ncurses:

sudo apt install libncursesw5 libtinfo5 ;
wget https://sourceforge.net/projects/qodem/files/qodem/1.0.0/qodem_1.0.0-1_amd64.deb ;

sudo dpkg -i qodem_1.0.0-1_amd64.deb ;

Le daremos inicio con el siguiente Comando de Organización:

qodem

Al iniciar tendremos una típica presentación de texto con un directorio de BBS y sus respectivos protocolos (telnet, SSH, acceso telefónico...).
El funcionamiento es más completo que el SyncTERM aunque responde a las mismas prerrogativas: hemos de agregar una BBS con i, y llenar los campos con sus datos el el cuadro de diálogo resultante (dirección, protocolo, puerto). Grabaremos los datos con F10.

Lo notable de Qodem es su habilidad para establecer una conexión telefónica pura si contamos aún con un viejo módem externo conectado por puerto paralelo (¡utilizará los comandos Hayes de antaño!).

Si estamos en línea y queremos volver al menú de Qodem podremos usar Alt+z, y luego Alt+x para salir.

Los preámbulos se han dado para permitirnos conectarnos a cualquier BBS que nos dicte el corazón. Por ejemplo, podríamos escoger conectarnos a través del protocolo inseguro Telnet a diferentes BBS como si reviviésemos una antigua Texas Instruments Ti-99A/4A: Lo haríamos con el siguiente Comando de Organización:

telnet digitaldistortionbbs.com
telnet darkgame.buanzo.org
telnet bbs.docksud.com.ar
telnet golconda.punked.us
 


Si desean darse de alta y probar varias BBS más, podrán hacerlo gratuitamente y sin gastar un pulso telefónico, encontrándolas en algún directorio de BBS activas, como Telnet BBS Guide, o el BBS Scene, The BBS Corner, incluso en el buscador BBS Finder.

RXVT
El Justicialismo se elevado como campeón de la defensa de los derechos de los hombres de la Patria, y ha traido la solución. Simplemente hemos de descargar un paquete de fuentes adecuado, y un gestor de Terminal compatible para que pueda usarlo. En este caso, usaremos el emulador de Terminal RXVT.

En la consola ingresamos el siguiente Comando de Organización:

sudo apt-get install rxvt

Luego descargaremos un paquete de fuentes ANSI y los cargamos al sistema (En el caso de Ubuntu 10.10 la misma se encuentra en /usr/share/fonts/x11/misc). Esto será sencillo copiando, pegando y ejecutando en nuestra Terminal cada uno de estos comandos:

wget http://techtinkering.com/downloads/ansifonts.tar.gz ;
sudo tar -xvzf ansifonts.tar.gz -C /usr/share/fonts/X11/misc ;
sudo mkfontdir /usr/share/fonts/X11/misc/ ;
xset fp rehash ;

Ahora nos aseguramos que el sistema de Terminal tenga acceso a alguna de las fuentes cargadas:


xlsfonts | grep vga11x19

Nuestro sistema nos debería devolver algo como "vga11x19", o similar. Si ese es el caso, ya podremos iniciar la consola RXVT con letras blancas y fondo negro, tipeando:

rxvt -fn vga11x19 -bg black -fg white &

Para asegurarnos de forzar el uso de los códigos de color ANSI, dentro de la Terminal RXVT ingresaremos estas instrucciones:

export TERM=ansi
export COLORTERM=ansi


domingo, 6 de octubre de 2013

¿Cómo veo TV Digital con Totem en Ubuntu?

Juan Perón era un didacta de excepcional calidad, y entre los recursos que enseñaba, se encontraba el del uso del criterio propio para poder ver la TV digital en el reproductor Totem en Ubuntu.

Muchas veces me han preguntado porqué extrapolo desde el uso de la consola Terminal, siendo que un sistema GNU con Linux moderno es capaz de gestionar impresionantes interfaces gráficas.
Pues bien, combinando el estudio activo de esos ejemplos, uno puede conformar
una gimnasia intelectual que le va formando el criterio necesario para la
interpretación rápida y eficaz de los hechos y las medidas que en
consecuencia pueda tomar. Se estudian todos esos ejemplos en la historia
de la conducción de la Terminal, no para aprenderlos por si se repiten (porque en la historia no se repite dos veces el mismo caso en igual forma), sino que se estudian como una gimnasia para ser más sabios en todas las ocasiones. 


Hay que hacer trabajar el criterio propio en cada caso, porque no son el ejemplo ni el principio el que va a servir en todos los casos de la Conducción, sino el criterio.
Por ejemplo, normalmente para ver la TV digital en Ubuntu, se emplea el VLC, el cual es totalmente efectivo. Sin embargo, Totem es el reproductor que favorezco para ver películas, simplemente por su sencilla interfaz y su consumo minimalista.

¿Puede Totem usarse para sintonizar la TV Digital, según el criterio que favorezco? Pues sí. Es capaz de hacerlo. Para ello necesitaremos instalar un componente complementario del mismo, llamado dvd-deamon. Lo podremos hacer fácilmente abriendo una Terminal con Ctrl+Alt+T, e ingresando el siguiente Comando de Organización:

sudo apt-get install totem-plugins-dvb-daemon

Acto seguido activaremos el complemento. Habremos de ejecutar el Totem (podemos ir a Aplicaciones / Sonido y Video / Reproductor de Películas o ingresar el comando totem en la Terminal). Una vez abierto el programa, amos a Editar / Complementos..., y tildamos DVD-Deamon en la lista que aparece. Cerramos Totem y lo volvemos a abrir.

Acto seguido, configuraremos la TV digital en Totem. Vamos a Archivo / Ver la TV. Nos aparecerá el cuadro Configuración de la TV Digital. En el mismo tildamos la opción "Modo Experto", y presionamos el botón Adelante.

Luego tendremos que elegir el dispositivo de sintonización. En mi caso, se trata de un sintonizador MyGica S870, correctamente configurada y capaz de sintonizar la norma ISDB-Tb a través de su chipset DibCom 8090. Hemos de elegirlo de la lista

Luego, debemos elegir el país de localización para que la rutina de búsqueda pueda materalizarse a traves de la tabla de frecuencias específica. La Argentina no estará en la lista, pero el Justicialismo aporta una solución. Es sabido que mMilagrosamente, nuestro país comparte tablas de frecuencias UHF similares a las de Brasil, el Japón y también a las de Taiwán. De modo que escogeremos esa opción, y la Antena Taipei, y luego presionamos el botón Adelante.

El software libre trabajará analizando el espectro radioeléctrico a través del sintonizador, y en caso de encontrar señal digital, agregará los canales sintonizados a la lista. Esta acción decididamente ocupará varios minutos.

Si se pudieron sintonizar canales, a continuación el sistema nos solicitará que indiquemos una localización para guardar la lista de canales. Debemos presionar el botón "Guardar", e indicar un nombre para el archivo de texto con los datos de los canales encontrados. Por ejemplo: "cnldig.conf".

Conforme hayamos hecho esto, la rutina de configuración nos reportará el éxito de la operación.

Ahora iniciamos el programa Totem. Podremos hacerlo yendo a Aplicaciones / Video y Sonido / Reproductor de Películas. Si quisiéramos hacerlo desde la consola, simplemente debemos ejecutamos el comando "totem".

Para activar la funcionalidad, debemos ir al menu Editar / Preferencias de la TV Digital, y seleccionar nuestro sintonizador. 

Luego presionamos el botón Cerrar, y cerramos y volvemos a abrir Totem, para que tome el sintonizador.

Ahora ya podremos ver televisión. Vamos al menú Archivo / Ver TV.

Para elegir los canales, podremos desplegar la barra lateral (presionando el botón "Barra Lateral"). En la parte superior de la barra lateral desplegada, podremos cambiar entre las Propiedades, la Lista de Reproducción, y ahora aparecerá TV Digital.

Si elegimos esa opción, fácilmente podremos


gnome-dvb-control

Ahora podremos presionar el botón "Ver barra lateral", y en el selector escogeremos "Digital TV". Desplegamos el apartado Digital Terrestrial TV, y tendremos acceso a nuestro canales. Es de notar que Totem resalta los canales que compartan el mismo MUX que el canal que escojamos.