Mostrando entradas con la etiqueta script. Mostrar todas las entradas
Mostrando entradas con la etiqueta script. Mostrar todas las entradas

domingo, 18 de febrero de 2018

¿Cómo sintonizo TV digital terrestre fácilmente en Ubuntu?


El 17 de Mayo de 1951, durante la ejecución del Decreto 9695 que daba creación al Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Juan Perón expuso en un discurso las altas necesidades que tenía el Estado, y explicó a los científicos cómo usar un script para facilitar la sintonía de la TV Digital Terrestre en Ubuntu.

(...)
Los desarrollos científicos que ha posibilitado nuestro Movimiento han sido dirigidos desde sus comienzos a la utilidad de la Nación toda, y sus habitantes. La petroquímica y las posibilidades que nos dan los altos estudios sobre física y energía atómica (la cual ya hemos emprendido) nos configuran en un camino que hemos de seguir por el bien de la República.

Este Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET) fue planteado con ese alto objetivo: que nuestros científicos investiguen bajo auspicio de un Estado fuerte y redistribuidor. Cada uno ha de recibir los beneficios del desarrollo, en este país en lo que está todo por acerse pero en el que la materia gris - como la verde - abundan.

Los ejemplos que lo justifican son múltiples. Vean señores, ver la TV Digital Terrestre es un derecho y una obligación que todo buen patriota ha de tener. Los contenidos son distribuidos gratuitamente en alta definición y con sonido digitalizado, bajo el estandar ISDB-T. En nuestro Movimiento tenemos una máxima que reza "todo lo que es de aire, debe poder recibirse en un sistema GNU con Linux a través de software libre".

Esto ha hecho que nuestro movimiento se torne en uno de gran apreciación, no sólo científica, sino a través de los usuarios comunes que son el verdadero consumo.

Lamentablemente, estas tareas de sintonizar el espectro radioeléctrico - el llamado "aire" - ciertamente requieren operaciones de configuración previa que requieren un buen conocimiento técnico, y si bien ya me he explayado en ello, dificultan una tarea que debería ser banal.

Ante tal necesidad se hace patente el derecho de desarrollar un software libre que le de solución. Ello es lo que se ha propuesto el compañero debianero, de rama popular del gentooísmo católico, Facundo Sánchez. Ha emprendido la creación de un guión de programación que simplifica la preparación de la TDT. Para aplicarlo, debemos hacer lo procedente:

En primer lugar, abrimos una terminal con Ctrl+Alt+T e ingresamos:

sudo apt update
sudo apt install vlc dvb-apps nano
Esto instalará los programas requeridos para operar la TDT.

nano tdt.sh

Se abrirá el editor GNU Nano con un archivo en blanco. Al mismo le podremos pegar el siguiente código fuente:

# /bin/bash
# ver 201802180527
# Se ruega pasar primero por la direccion https://ubuntuperonista.blogspot.com.ar/2015/08/el-justicialismo-ha-desarrollado.html
# facundo.areo@gmail.com
# Instrucciones,guardar este archivo como TDT.sh
# Licencia GPLV3 😊

touch .frec_canales02.conf
echo "
# 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
" > frec_canales02.conf

opt1="Ver TDT"
opt2="Buscar canales"
opt3="Referencias"
#opt4="option 4"
#opt5="option 5"
#opt6="option 6"
int=`zenity --height=275 --list --radiolist --text 'Seleccione la accion:' --column 'Select...' --column 'Interface Name' FALSE "$opt1" FALSE "$opt2" FALSE "$opt3"`
# FALSE "$opt4" FALSE "$opt5" FALSE "$opt6"`
echo "La opcion seleccionada es: "$int

case $int in
      "Ver TDT")
         echo "Ver TDT1"
            vlc .canalesd02.conf
            exit
      ;;
      "Buscar canales")
             scan frec_canales02.conf > .canalesd02.conf
            exit
      ;;
      "Referencias")
              echo "Ubuntu Peronista"
            echo " https://ubuntuperonista.blogspot.com.ar/2015/08/el-justicialismo-ha-desarrollado.html"
            exit
      ;;
      *)
         echo "desconozco esa opción"
            exit
      ;;
  esac
echo "Un fuerte abrazo Peronista !!!"

#https://ubuntuperonista.blogspot.com.ar/2015/08/el-justicialismo-ha-desarrollado.html
#https://ubuntuperonista.blogspot.com.ar/2012/10/mygicaS870ubuntu1204precisetvdigitalISDBT.html
#https://ubuntuforums.org/showthread.php?t=1999502



Una vez ingresado, lo grabamos con Ctrl+o y salimos del editor con Ctrl+x. Luego le asignamos permisos de ejecución con:

chmod +x tdt

...Y lo ejecutamos con:

./tdt.sh

El programa nos presentará en nuestra pantalla el siguiente cuadro de diálogo.
Lo primero que debemos hacer es memorizar los canales, lo cual nos será facililtado por el script. Simplemente tildamos "Buscar canales" y presionamos el botón Aceptar. A continuación y durante un par de minutos, nuestro sistema hará uso de la funcionalidad de búsqueda de canales para ejercer la sintonía. Si se encuentran canales, en nuestra terminal debería aparecer información similar a la siguiente:
Una vez finalizada la búsqueda del espacio radioeléctrico, nos devolverá al prompt de sistema. Para ver la televisión digital terrestre debemos ingresar nuevamente al programa, pero en el cuadro de diálogo debemos escoger "Ver TDT".

Ahí se lanzará el reproductor VLC recibiendo el stream de Televisión Digital Terrestre a través de nuestro sintonizador. Para cambiar los canales podremos avanzar al siguiente stream programado, o utilizar para ello la lista de reproducción (podremos abrirla con Ctrl+L, o bien haciendo clic sobre la imágen de video con el botón derecho del ratón, y elegimos "Lista de Reproducción".

jueves, 29 de junio de 2017

¿Cómo configuro una combinación de teclas para activar o desactivar el Touchpad en Ubuntu?


¡Queridos Descamisados!

Ciertas cosas son irreemplazables, y su pérdida provoca una amplia desazón. La abanderada de los humildes difícilmente tenga un reemplazo, pero su espíritu está en todos, y ha de llevarse como bandera a la Victoria.

No obstante ello no debe trasladarse a un equipo informático. Tales elementos son solo cosas, y solo animados por una programación tan buena como la del colectivo que la ha hecho.

En ocasiones, es natural que un equipo pueda expirar. Pero al no contar con espíritu intangible sino con un disco rígido, si este no se está roto bien puede ser reciclado en otra máquina, y sus datos puestos nuevamente a la acción. Naturalmente sólo querríamos seguir este proceder en por de la continuidad de datos, ya que lo lógico sería dar formato a dicho tal disco y instalar en él el sistema desde cero, si el equipo es diferente.

No obstante, este proceder tan caro a la prolijidad no siempre es práctico. En este caso hemos sufrido la pérdida de una veterana Acer 5542, motivo por el cual optamos por reemplazarla por un equipo nuevo de características más modernas.
Se trata de un equipo portátil HP Pavillion edición Star Wars Dark Side, con microprocesador Intel i7 6500 de 3.1Ghz, con cuatro núcleos y tecnología Skylake. La memoria RAM es de 8GB DDR3 ampliables a 16. Viene provista de lecto-regrabadora de DVD-ROM, su disco rígido Toshiba de 1TB. La pantalla consta de un panel IPS LED de 15,6 pulgadas, alimentada por un chipset de video híbrido: Intel Skylake Graphics para la gráfica 2D (compatible con el viejo i945), junto a la aceleradora 3D nVidia GeForce 940M con 2GB de VRAM. La conectividad está presente a través de un adaptador inalámbrico Wifi/Bluetooth Intel Wireless 3165 y una interfaz cableada Gigabit Ethernet Realtek RTL8101/2/6E. Viene con multilector de tarjetas y su teclado es inglés retroiluminado en rojo. Este equipo, en dudosa distinción, ostenta el esquema representativo del negro cabeza imperialista galáctico Darth Vader, y si bien venía con un mediocre Window$ 10 humorado con 30GB de contenido de esta tontorrona saga, ha de decirse que en general opera excelentemente con Ubuntu 16.04.2LTS Xenial Xerus, en su edición Mate de 64 bits.
Posiblemente si la instalación del sistema operativo GNU con Linux se hiciese desde cero, todo el hardware operaría óptimamente. Sin embargo, esta portátil reemplazó a otra, y en aras de la brevedad se le trasplantó el excelente disco Kingston de estado sólido de otra máquina dotada con Ubuntu 16.04.2LTS en esta. El trasplante "a lo vikingo" resultó exitoso.

Se producía sin embargo, una particularidad que por pequeña,no dejaba de ser molesta y dable de corregirse: el touchpad tipo Synaptic, no podía apagarse adecuadamente con la combinación Fn+F4 como debería hacerlo.
En primer lugar, debemos saber que esta HP Pavillion cuenta, como muchas portátiles, de "teclas de acción" combinadas con sus teclas de función (las teclas F1 hasta F12). Esto produce que las teclas F1-F12 no funcionen como tales, sino que cumplan la siguientes funciones:

F1: Ayuda
F2: Disminuye brillo de pantalla
F3: Aumenta brillo de pantalla
F4: Apaga / Enciende el Touchpad
F5: Enciende/Apaga la retroliluminación del teclado.
F6: Sonido Encendido / Apagado
F7: Disminuye el volúmen
F8: Aumenta el volúmen.
F9: Pista Anterior.
F10: Reproducir / Pausa.
F11: Pista siguiente
F12: Modo Avión (Wifi y Bluetooth On/Off).

Si queremos acceder al uso de las teclas de función (muy extendido en Linux), deberíamos combinarlas con la tecla Fn. Esto lo hace extremadamente engorroso.

Afortunadamente, este aspecto se modifica desde la BIOS del sistema (un programa de configuración propio del equipo que se activa incluso antes que el sistema operativo). Para ello debemos entrar a la BIOS: apenas y no bien encendamos la portátil, debemos presionar repetidamente la tecla Esc . Si todo sale bien, aparecerá un menú que nos solicitará qué queremos hacer. Simplemente presionamos F10 para activar la opción "Configuración de BIOS del Sistema".

Se hará presente entonces la pantalla de configuración de la BIOS. Es importante no modificar nada, solo el parámetro correspondiente a las teclas de acción. Presionamos dos veces la tecla Flecha de Cursor derecho para movernos a la opción Configuración de sistema, y usamos la Flecha del Cursor Abajo para movernos hasta la opción Modo de las Teclas de Acción. Presionamos Enter para cambiar su estado, y seleccionamos Desactivado y presionamos Enter.
Conforme los cambios nos hayan quedado como se indican en la pantalla, presionamos F10 para guardar y salir (el sistema nos preguntará si deseamos salir guardando los cambios realizados, debemos indicarle que si).

Ahora, para que las funcionalidades descriptas anteriormente se activen, deben combinarse con la tecla Fn. Si oprimimos F1 a F2 simplemente operarán como teclas de función convencionales.

Esto debería funcionar adecuadamente. Ahora bien, cuando presionamos Fn+F4 para apagar el Touchpad, este se apaga, pero solo momentánemanete. Al usarlo por segunda vez se reactivará (parecería que sólo está ejecutando la funcionalidad de "apagar el touchpad para escribir"). Afortunadamente, a toda necesidad corresponde un derecho que el Justicialismo puede hacer Realidad Efectiva.

En este caso podremos realizar un guión de programación, o script, encargado de sensar el estado del Touchpad y encenderlo o apagarlo alternativamente de una manera mas agresiva, y asignarle este nuevo script la combinación Fn+F4 para que lo active. Esto será muy sencillo si lo hacemos de la manera en las que os instruiré. En primer lugar abrimos una consola terminal con Ctrl+Alt+T. En la pantalla que se despliegue, ingresamos el siguiente comando de organización:

nano ~/.tp

Al presionar Enter, esto nos abrirá el editor de texto GNU Nano, con un archivo oculto y en blanco llamado "tp". Simplemente le pegamos el siguiente código fuente:

#!/bin/bash
# tp
# Pone el touchpad en on/off.
# Ubuntu Peronista 

# Obtiene el Identificador del touchpad.
tp_id=`xinput list | grep -i touchpad | awk '{ print $6 }' | sed 's/id=//'`


# Se fija si el touchpad estaba activado o no.
tp_enabled=`xinput list-props $tp_id | grep Device\ Enabled | awk '{ print $4 }'`


if [ $tp_enabled = 0 ]
then
  # Si el touchpad estaba desactivado, le da gimonte.
  xinput set-prop $tp_id "Device Enabled" 1
  echo "El Touchpad ahora se ha encendido"
elif [ $tp_enabled = 1 ]
then
  # Si el touchad estaba activo, lo apaga.
  xinput set-prop $tp_id "Device Enabled" 0
  echo "El Touchpad ahora se ha apagado."
else
  echo "tp_toggle: No se pudo obtener el status del touchpad desde xinput."
  exit 1
fi


Acto seguido presionamos Ctrl+o (para guardar los cambios) y Ctrl+x (para salir del editor Nano).

Conforme volvamos a la terminal, le asignaremos al script .tp los permisos necesarios para que pueda ejecutarse. Ello lo hacemos con el comando:

chmod +x .tp

Ahora podremos probar el programa. Para ejecutarlo desde la terminal puedo ingresar:

./.tp

...Y el sistema debería devolvernos:

El Touchpad ahora se ha encendido.

o:

El Touchpad ahora se ha apagado.

Conforme que veamos que el programa funciona adecuadamente, podremos asignarle una combinación de teclas. Para ello vamos a Sistema / Preferencias / Hardware / Combinaciones de Teclas.

Esta ventana nos listará las combinaciones de teclas que podremos usar como atajo para activar diferentes funcionalidades, pero no hay ninguna para encender o apagar el Touchpad. Para crearla, presionamos el botón +Añadir. Esto abrirá el cuadro de diálogo "Combinación personalizada".

Podremos ingresar un nombre descriptivo a la Acción en el campo "Nombre:" (por ejemplo, "Trackpad On/Off"), y en el campo "Comando:" tal como se indica en la figura, debemos ingresar el comando de ejecución del guión: ./.tp

Conforme presionemos el botón Aceptar, se habrá creado tal Acción, pero no tendrá de momento ninguna combinación de teclas asignada (en la columna Combinación indicará "Desactivado"). Para asignarle una combinación debemos hacer clic sobre la indicación "Desactivado" de la columna correspondiente a la Acción, y al indicarse "Combinación nueva", debemos oprimir la que deseemos, en este caso utilizaremos Fn+F4.
Cuando la hayamos ingresado, el sistema debería indicar "Mod4+P" (el cual es el código interno de tal combinación). En tal caso presionamos el botón Cerrar, y de ahora en mas con Fn+F4 podremos activar o desactivar el Touchpad mientras estemos en una sesión de Escritorio Gráfico.
Y ya con esto podremos utilizar el touchpad activandolo o desactivándolo con Fn+F4 cuando lo deseemos, gritando al cielo "¡Viva Perón!".

lunes, 9 de mayo de 2016

¿Cómo puedo ver el clima en la Terminal en Ubuntu?

En 1974, reunido en la Sede Central de la CGT, Juan Perón expone sobre cómo distinguir los nuevos climas, y sobre cómo hacer que los mismos se muestren en la Terminal de Ubuntu gracias a Bash-Weather.

(...)
Indudablemente que en Movimientos como el Peronista, de una amplitud tan grande, y de un proceso cuantitativo tan numeroso, tiene que haber de todo en lo que a ideologías se refiere. Yo siempre he manejado el Movimiento Peronista con la mas grande tolerancia en ese sentido porque creo que los que se afilian y viven dentro de un Movimiento multitudinario como es el Movimiento Peronista, deben de tener la absoluta libertad para pensar, para sentir y para obrar en beneficio de ese propio movimiento.
Es indudable que en todos los Movimiento revolucionarios existen tres clases de enfoques. El de los apresurados, que creen que todo anda despacio y que no se hace nada porque no se rompen cosas ni se mata gente. El otro sector está formado por los retardatarios, esos que no quieren que se haga nada, y entonces hacen todo lo posible para que esa revolución no se realice. Entre esos dos extremos perniciosos existe uno que es del equilibrio, y que conforma la acción de una política que es el Arte de hacer lo posible, no ir mas allá ni quedarse más acá, pero hacer lo posible en beneficio de las Masas, que son las que mas merecen y por las cuales hemos de trabajar todos los argentinos.

En el encadenamiento internacional, también existen enfoques diferentes en aras de la integración universal. En este momento serían el Imperialismo Yanqui, el Imperialismo Soviético, o un Tercer Mundo. Si esa integración universal la realizara cualquiera de los imperialismo, la harían en su provecho, no en el provecho de los demás. Solamente la conformación de un Tercer Mundo podría ser una garantía para que la humanidad pudiese disfrutar un mundo mejor en el futuro, pero para eso ese Tercer Mundo tiene que organizarse y fortalecerse.

Hace ya casi treinta años nosotros desde aquí lanzamos la famosa Tercera Posición. Que entonces cayó aparentemente en el vacío porque había terminado la Guerra Mundial y no estaba el horno para bollos. Se rieron de nosotros. Pero han pasado 27 años desde entonces y hoy, dos terceras partes del mundo puja por estar en esa Tercera Posición.

Estos son, compañeros, los Grandes Problemas. Los pequeños problemas políticos en los cuales hemos estado empeñados hasta ahora entre los argentinos - frente a estas acechanzas del futuro inmediato - qué importancia pueden tener... Son asuntos pequeños y gallináceos que andan a ras del suelo, cuando ya es necesario pensar en grande, para el mundo, dentro del cual nosotros realizaremos nuestro destino o sucumbiremos en la misma adversidad que sucumban los demás.

Hoy es necesario pensar de otra manera. ya no se puede pensar con la pequeñez de los tiempos cuando todos querían disfrutar y ninguno quería comprometer su destino y su felicidad futura para asociarla a la de los demás. Hoy eso es indispensable, porque en un mundo que no se realice no habrá país que pueda hacerlo. Y dentro de esos países que no se realicen no habrá individuo que pueda lograrlo.

Trabajar hoy por la felicidad del hermano vecino es trabajar también por la felicidad de todos los demás.

Y en el caso del software indudablemente hemos de perseguir las mismas premisas. Por ejemplo, no serán pocos los casos en los cuales necesitamos contar en nuestra Terminal con una aplicación que nos permita, de manera Libre, conocer el clima que impera en nuestro entorno o en otro.

Las soluciones en este aspecto tienen que ser - también - compartidas. Por ello podremos contar con Bash-Weather, un guión de programación que se basa en el servicio telemático abierto y licenciado bajo GPLv3 de OpenWeatherMap.org. Dicho servicio consiste en una red abierta de proveedores de datos climáticos (a través de máquinas sensoras computadas especiales).
Estos aparatos cuentan con conexión a internet, y pueden adquirirse por hobbistas o pueden armarse utilizando hardware libre (Raspberry Pi y Aduino son peronistas y populares). Aquellos voluntarios que dispongan de un equipo de medición del tiempo munido de software libre pueden asociarlo a dicho servicio para proveer de datos confiables y cercanos a otros usuarios que carezcan de tales equipos.

En nuestro caso, deseamos poder acceder a dichos datos para beneficio de Bash-Weather, el indicador de clima en tiempo real. Para ello requeriremos contar con una API Key, o clave de aplicación. Lograrla es simple: únicamente necesitamos una dirección de correo electrónico para dar de alta un Usuario de la aplicación OpenWeatherMap.org.

Para crear un usuario nos damos de alta en la web oficial. Una vez allí el proceso de creación de un usuario es el típico de todas estas aplicaciones: debemos registrar un nombre de usuario y una dirección de correo electrónica válida asociada al servicio. También debemos ingresar una contraseña para el servicio, y aceptar los Términos del servicio).
Opcionalmente podremos indicar para qué motivo queremos utilizar la API, si es que tenemos una compañía o deseamos hacer uso comercial de la misma.
Tras ello, el sistema nos proveerá la "API Key" requerida para el uso del servicio de colectado de datos climatológicos. La API Key consta de una extensión de 32 caracteres.

Tomamos nota de la misma (o la copiamos en algún lado).

Una vez provistos de la API Key, podremos instalar la aplicación en nuestro sistema GNU con Linux. Para ello abrimos una Terminal con Ctrl+Alt+T e ingresamos el siguiente bloque de Comandos de Organización:

sudo apt-get upgrade ;
sudo apt-get install ncurses-bin git bc curl grep ;
cd ~ ;
git clone https://github.com/szantaii/bash-weather.git ;
mv bash-weather/ .bash-weather/ ;
cd ~/.bash-weather/ ;


Para que la aplicación funcione adecuadamente debo indicar mi API Key en el archivo openweathermap.key de la aplicación, o hacerlo en la línea de comandos a la hora de ejecutar el archivo. En este caso lo haremos modificando el archivo con el editor peronista GNU Nano con el siguiente comando:

nano ~/.bash-weather/openweathermap.key

...y al final del archivo le agrego la API Key que nos fue provista:

# Add your OpenWeatherMap API key below (http://openweathermap.org/appid)
0123apikey456quemedio7890laweb12


Luego guardamos el archivo con Ctrl+o y salimos del editor Nano con Ctrl+x.

Acto seguido le otorgo permisos de ejecución a los scripts del programa:

cd ~/.bash-weather/
chmod +x bash-weather.sh


luego inicio la aplicación:

./bash-weather.sh


...o

bash bash-weather.sh

Si no ingresamos nada más, el sistema intentará emplear nuestra dirección IP de nuestra conexión a internet para identificar nuestra localización geográfica específica, y en base a ello, tras unos segundos, nos mostrará los datos correspondientes a nuestra ciudad.
Mediante la tecla c podremos saber la temperatura en unidades anglosajonas, y mediante la tecla q saldremos del programa.

A pesar de su sencillez, este guión de programación ofrece ciertos comandos adicionales, útiles para para especificar la ciudad, el país, y otros aspectos. Los comandos permitidos con bash-weather son:

-k  Permite especificarle la API Key desde la línea de comandos, si no la hubiésemos incluido en el archivo openweathermap.key
-h  Nos muestra una pantalla de ayuda.
-t "nombre de ciudad"  Configura manualmente la ciudad a buscar.
-c código_pais  Configura manualmente el país en base al código de dos letras (Argentina es AR).
-f  Muestra colores en el programa

Utilizando dichos comandos, podríamos configurar bash-weather para que nos muestre los datos para la ciudad de buenos aires.

./bash-weather.sh -t "Buenos Aires" -c AR -f 




También sería sencillo crear un nuevo guión propio llamado "clima" que nos simplifique todas estas opciones. Para ello creamos un archivo llamado clima.sh con Nano:


nano ~/clima

y le pegamos el siguiente contenido:

#!/bin/bash
# Permite ver
bash /home/usuario/.bash-weather/bash-weather.sh -t "Buenos Aires" -c AR -f



Luego de reemplazar usuario con nuestro nombre de usuario, guardamos y cerramos el fichero (con Ctrl+O y Ctrl+x), y luego le otorgamos los permisos pertinentes para su libre ejecución con:

cd ~
chmod +x ~/clima

Desde ahora, cada vez que necesitemos conocer el clima en nuestra Terminal, podremos abrir una y saberlo con:


./clima



viernes, 12 de septiembre de 2014

¿Cómo sintonizo radios online desde la Terminal en Ubuntu?

¡Trabajadores!

He explicado que la Radio es fundamental, por facilidad de acceso y por multiplicidad de medios, para la propalación de la Doctrina del Justicialismo. En ello hemos sido claros y constantes.

Yo mismo he divulgado mi mensaje a las ondas hertzianas desde mi Escritorio, a través de la LRA, Radio Nacional. Esto es porque la cadena de transmisión así lo permite desde un punto de vista técnico, y la comodidad lo hace realidad desde la funcionalidad.

Si esto es factible de hacerse en Ubuntu, mucho más sencillo será entonces recibir dichas ondas de radio en nuestro Escritorio. Ya he explicado numerosas veces como hacerlo, por ejemplo, con RadioTray.


Indudablemente la Interfaz de Línea de Comandos permite comandar todo tipeando las órdenes que necesitemos de forma local, y también de manera remota. Por ello favorezco su uso siempre que sea posible, en cuenta de que la misma nos permitirá la agilidad que todo Conductor requiere para el Movimiento.

¿Pero qué sucede si queremos recibir streaming de audio desde nuestra Consola Terminal?

Han de saber que los legendarios reproductores mplayer o VLC son capaces de ejecutarse en la consola y de sintonizar una emisora sin demasiado trámite. Pero a veces los mismos no representan la opción más práctica: existirán situaciones donde podría ser necesario sintonizar otras radios rápidamente, o donde no querramos tener un programa activo que nos moleste. O bien puede suceder que ni siquiera guardemos en nuestra mente la irrecordable dirección URL de la emisora a sintonizar.

En todo ello ha pensado el descamisado Gabriel Artigue, para que podamos afrontar toda esta problemática con un script sencillo y una interfaz a la que ha maquinado usando el potente generador Dialog. Este script al que me he dado la libertad de llamar pradio por Perón Radio, no involucra instalar más programa que el VLC, al cual empleará como motor de sintonía.

Normalmente el VLC ya viene instalado en la mayoría de las distribuciones, pero si así no lo fuese, lo podremos cargar en nuestro sistema abriendo una Terminal con Ctrl+Alt+T e ingresando el siguiente Comando de Organización:

sudo apt-get install vlc

Acto seguido, editamos el archivo del script. Lo podremos hacer con el editor peronista GNU Nano en nuestra carpeta de Usuario:

nano ~/pradio.sh

Se abrirá Nano con un archivo en blanco llamado pradio.sh. Simplemente copiamos y pegamos dentro del Nano el código fuente de Perón Radio:

#!/bin/bash
# Original: radio.sh, de Gabriel Artigue
# Traducido y alterado como pradio (Perón radio)
# para no confundir con el paquete radio, y modificar estaciones.

: ${DIALOG=dialog}
: ${DIALOG_REPRODUCIR=0}
: ${DIALOG_CANCELAR=1}
: ${DIALOG_HELP=2}
: ${DIALOG_EXTRA=3}
: ${DIALOG_ITEM_HELP=4}
: ${DIALOG_ESC=255}

tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
trap "rm -f $tempfile" 0 1 2 5 15


$DIALOG --clear --title "Perón Radio" "$@" \
        --menu "Elija una emisora:" 20 50 17 \
        "1" "LRA AM870 Radio Nacional" \
        "2" "Radio de las Madres" \
        "3" "AM Concepto" \
        "4" "FM Del Plata" \
        "5"  "Radio Nacional Rock" \
        "6"  "BBC" \
        "7"  "Beethoven Radio" \
        "8"  "Cadena Ser" \
        "9"  "Cope" \
        "10"  "CX6 Clásica" \
        "11"  "ProFM Clasica" \
        "12"  "Radio 5" \
        "13"  "Radio France Classical" \
        "14" "Radio France Internationale" \
        "15" "M80" \
        "16" "Radio Pais" \
        "17" "Radio Reloj" \
        "18" "Radio Sport" \
        "19" "RDP" \
        "20" "Radio Cadena ECO AM1220" \
        "21" "RNE Clásica" \
        "22" "Vocea Basarabiei" \
        "23" "RAI Italia" \
        "24" "Golden Radio Italia" \
        "25" "Italia Radio Salemi" \
        "26" "R101 Anni '80" \
        "27" "Gammagioiosa Golden Hits" \
        "28" "Virgin Rock 70" \
        "29" "Radyo Metropol Turkey" \
        "30" "KNBA - A Signal of Change" \
        "31" "VOA News Now" \
        "32" "KUHF Houston Texas" \
        "33" "WGN Chicago Illinois" \
        "34" "RTÉ Radio 1 Ireland" \
        "35" "Shannonside FM Longford Ireland" \
        "36" "Radio El Mundo" \
        "37" "Voice of Russia - English" \
        "38" "Vostok FM - Moscow" \
        "39" "NHK en Español" \
        "40" "Prima Radio Napoli" \
        "41" "La Zurda - Uruguay" \
        "42" "Big B Radio - Asian Music" 2> $tempfile

retval=$?

case $retval in
$DIALOG_REPRODUCIR)
clear
echo Procediendo a cargar la emisora elegida...
echo De no reproducir el audio vuelva a ejecutar Perón Radio
echo y elija otra emisora o seleccione Cancel para detener la radio.

case `cat $tempfile` in
1) station="http://www.alsolnet.com/stream/sc_rad1/listen.pls";;
2) station="http://200.68.81.65:8000/am530";;
3) station="http://190.220.149.204:1267";;
4) station="http://69.4.236.136:7920/listen.pls";;
5) station="http://www.alsolnet.com/stream/sc_rad39/listen.pls";;
6) station="http://www.bbc.co.uk/radio/listen/live/r1_aaclca.pls";;
7) station="http://yp.shoutcast.com/sbin/tunein-station.pls?id=99179295";;
8) station="http://playerservices.streamtheworld.com/pls/CADENASER.pls";;
9) station="http://www.listenlive.eu/cadenacope.m3u";;
10) station="http://yp.shoutcast.com/sbin/tunein-station.pls?id=103397";;
11) station="http://stream.profm.ro:8082/clasic.mp3.m3u";;
12) station="http://radio5.rtve.stream.flumotion.com/rtve/radio5.mp3.m3u";;
13) station="http://players.creacast.com/creacast/accent4/playlist.pls";;
14) station="http://www.tv-radio.com/station/france_inter_mp3/france_inter_mp3-128k.m3u";;
15) station="http://194.169.201.177:8085/liveM80.mp3";;
16) station="http://www.efluw.net:3131/listen.pls?sid=1";;
17) station="http://media.enet.cu/radioreloj";;
18) station="http://69.4.236.136:7914/";;
19) station="mms://195.245.168.21/rdpi";;
20) station="http://200.108.115.38:2123/listen.pls";;
21) station="http://radioclasica.rtve.stream.flumotion.com/rtve/radioclasica.mp3.m3u";;
22) station="http://yp.shoutcast.com/sbin/tunein-station.pls?id=1658540";;
23) station="http://www.listenlive.eu/rai8.m3u";;
24) station="http://www.goldenradio.it/listen.m3u";;
25) station="http://players.fluidstream.net/easy4trafic.pls";;
26) station="http://players.creacast.com/creacast/r101_thema1/playlist.pls";;
27) station="http://www.gammagioiosa.net/goldenhits.m3u";;
28) station="http://shoutcast.unitedradio.it:1119/listen.pls";;
29) station="http://radyometropol.radyolarburada.com:5544/listen.pls";;
30) station="http://pubint.ic.llnwd.net/stream/pubint_knba";;
31) station="http://www.voanews.com/wm/live/newsnow.asx";;
32) station="http://129.7.48.199/KUHF-HD1-128K.m3u";;
33) station="http://provisioning.streamtheworld.com/pls/WGNAM.pls";;
34) station="http://www.listenlive.eu/rte1.m3u";;
35) station="http://radiokerry.mp3.miisolutions.net:8050/radiokerry/shannonside_128kMP3_website.m3u";;
36) station="http://radiostream.elmundoradio.com:8332/;stream/1";;
37) station="http://engserver.streamr.ru:8020/eng.m3u";;
38) station="http://www.listenlive.eu/vostockfm.m3u";;
39) station="http://www3.nhk.or.jp/rj/podcast/mp3/spanish.mp3";;
40) station="http://www.kemoniastreaming2.net:8010/";;
41) station="http://usa2.fastcast4u.com:3470/listen.pls";;
42) station="http://50.7.173.162:8089/listen.pls";;
esac
;;

$DIALOG_CANCELAR)
     pkill vlc
     clear
echo Cerrando Perón Radio y reproducción detenida.
     exit 0;;

esac

pkill vlc
exec >/dev/null 2>&1
vlc -Idummy $station &!
exec >/dev/tty

exec pradio.sh
clear

Una vez que hayamos pegado el contenido, lo guardamos con Ctrl+o y salimos de Nano con Ctrl+x.

Para que funcione adecuadamente, habremos de asignarle a este archivo un  permiso de ejecución. Lo haremos con:

sudo chmod +x pradio.sh

...y ahora simplemente nos quedará el script armado para cuando queramos ejecutarlo. En Linux los scripts pueden darse inicio fácilmente anteponiendo punto barra ("./") delante del nombre del script. El comando tomaría entonces la  forma siguiente:

./pradio.sh

Al lanzarse Perón Radio, sin burocracia alguna nos mostrará una lista con las opciones de sintonía. Al elegir una con las flechas del cursor y presionar el botón Ok, se saldrá del script y se cargará el stream sin más trámite que mostrarnos una notificación.

El programa es bien sencillo: no nos permitirá modificar el volumen (para ello debemos usar el comando alsamixer u algún otro software libre de control de audio). Tampoco nos mostrará ningún logotipo, banner publicitario, ni noticias molestas a las que son adeptas las radios.

Si quisiéramos cesar la reproducción de la emisora, debemos ejecutar nuevamente el script y esta vez elegir el botón Cancel (podremos hacerlo presionando Tab o la Flecha de Cursor Derecho y luego seleccionarlo con Enter.
La obvia y sencilla programación que ha aplicado Gabriel Artigue nos permite  alterar nuestras emisoras preferidas simplemente agregándolas con el formato indicado en el archivo, o reemplazar alguna de las existentes reprogramando el código existente (sin alterar las comillas, tildes y demás).

El programa corre en cualquier consola de texto, aunque claramente prefiere las de las terminales color.