Skype en Linux

Como soy un apasionado de la terminal (modo comando en Linux, donde todo es más rápido que en ventanitas muchas veces innecesarias), he encontrado utilísimo un manual en inglés para instalar Skype (la última versión disponible para plataformas de 64bits) sobre distribuciones basadas en debian (.deb)

Skype está disponible para linux en los repositorios oficiales de Microsoft. Lo que no deja de ser sorprendente, pues hace tiempo su batalla era tan enloquecida que pareciera que los linuxeros éramos pájaros a batir, siendo una comunidad ínfima y poco dañina.

Pongo los pasos en cajas de código, para poder copiarlos si alguna vez vuelvo a necesitarlos. Asumo que se conoce algo de la operativa en terminal de linux. En caso contrario, no perder el tiempo con esto.

Para descargar (en la carpeta que sea, aunque yo recomiendo ~/Descargas o /tmp) la última versión de Skype mediante un paquete .deb usando el comando wget:

wget https://go.skype.com/skypeforlinux-64.deb

A continuación, instalar el paquete así descargado con:

sudo dpkg -i skypeforlinux-64.deb

(Otra opción es con apt: sudo apt install ./skypeforlinux-64.deb)

Durante el proceso de instalación, se añadirá el repositorio oficial de Skype al sistema, con lo que las actualizaciones son tan sencillas como ejecutar los comandos habituales para actualizar cualquier pieza del mismo:

sudo apt update
sudo apt upgrade

Y eso es todo. Tendremos nuestro skype para linux completamente operativo. Sólo queda iniciar sesión y disfrutar de una conexión más o menos satisfactoria, dependiendo de otros factores, como las tarjetas de sonido que se manejen, auriculares o no, vídeo-cámaras, etc. Recomendable conocer y tener instalado PulseAudio para manejar la configuración del sonido.

Búsqueda de palabras en la RAE en línea de comandos

He fabricado un script (un lote de comandos) de bash shell en Linux para descargar y juguetear con búsquedas en la RAE, ya que resulta complicado pedir que tengan la deferencia de hacerla disponible para el público, como si la RAE fuese un organismo público pagado con dinero público.

Es el paso intermedio entre buscar una palabra y descargarme el diccionario completo palabra a palabra. Ahora toca hacer un pequeño programita que lo invoque para cada una de las palabras que tecleé para el proyecto de Isidoro Valcárcel Medina hace unos años y traiga sus definiciones.

Lo he llamado buscaenrae.sh.

Esta versión está modificada sobre la que publiqué hace unos días para subsanar errores relacionados con las palabras que contienen varias entradas/acepciones (no es lo mismo acepciones que entradas y soy consciente de ello, pero no es importante), así como para retirar las conjugaciones en los verbos.

#!/bin/bash

### FUNCIONES ÚTILES PARA EL PROGRAMA
# uso() Instrucciones del programa y salida en caso de error.
uso () {
  echo "Uso: $0 salida palabra"
  echo -e "\tsalida es un valor númerico que identifica:"
	echo -e "\t[0] para generar un archivo HTML con la respuesta"
	echo -e "\t[1] para generar un archivo TXT  con la respuesta"
	echo -e "\t[2] para generar una línea  TXT  con la respuesta"
  exit
}
f_verbos="00000_VERBOS.txt"
f_errores="00000_ERRORES.txt"

# CONTROL DE ENTRADA DE VARIABLES y ASIGNACIÓN
if [ $# -lt 2 ]
then
  # Reportar uso inapropiado
  uso
else
  salida=$1
  if [ $# -eq 2 ]; then
    palabra="$2"
  elif [ $# -eq 3 ]; then 
    palabra="$2 $3"
  elif [ $# -eq 4 ]; then 
    palabra="$2 $3 $4"
  elif [ $# -eq 5 ]; then 
    palabra="$2 $3 $4 $5"
  fi
  # echo "Palabra es #$palabra#"
fi

# CONSULTA DEL SERVIDOR de la RAE simulando ser uno de los diversos navegadores posibles
navegador=(
  "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1"
  "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:77.0) Gecko/20100101 Firefox/77.0"
  "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:77.0) Gecko/20190101 Firefox/77.0"
  "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A"
)
rnd=`echo $(($RANDOM%${#navegador[@]}))` # Elegimos un navegador al azar
# Hacemos la petición a la web de la RAE
curl -s --user-agent "${navegador[$rnd]}" https://dle.rae.es/"$palabra" > ./"$palabra.html"

# PROCESAMOS EL ARCHIVO OBTENIDO (Cortamos, retiramos lo innecesario, etc)
# Si se trata de un verbo, quitar las conjugaciones
id_conjugacion="
" esunverbo=`grep -c "$id_conjugacion" ./"$palabra.html"` if [ $esunverbo -gt 0 ] then echo "$palabra es un verbo" >> $f_verbos # ELIMINAMOS la(s) CONJUGACIÓN(ES) sed -i "/${id_conjugacion}/d" ./"$palabra.html" fi # Si tiene más de una acepción (Calcular cuántas después de saber si es un verbo) id_acepcion="
" num_acepciones=`grep -c "$id_acepcion" ./"$palabra.html"` # Si no tiene acepciones, la palabra no existe. No continuamos. if [ $num_acepciones -eq 0 ] then echo "$palabra no se ha encontrado en la RAE" >> $f_errores rm "./$palabra.html" exit fi # PARTIR en $num_acepciones EL FICHERO $palabra.html" # acepciones y acepciones_fin son 2 arrays de líneas PRECISO CONVERTIRLOS a cortes[] acepciones=`grep -n "$id_acepcion" ./"$palabra.html"|awk -F":" '{print $1}'|sed ':a;N;$!ba;s/\n/ /g'` c=0 for i in $acepciones do let cortes[$c]=$(($i)) let c=$(($c+1)) done acepciones_fin=`grep -n "$id_acepcion_fin" ./"$palabra.html"|awk -F":" '{print $1}'|sed ':a;N;$!ba;s/\n/ /g'` c=0 for i in $acepciones_fin do let cortes_fin[$c]=$(($i)) let c=$(($c+1)) done # GENERA FICHEROS palabra.X.html por cada ACEPCIÓN for (( i=0; i<$num_acepciones; i++ )) do # echo "El comienzo del corte está en ${cortes[$((i))]}" # echo "El fin del corte está en ${cortes_fin[$((i))]}" sed "${cortes[$((i))]},${cortes_fin[$((i))]} !d" "./$palabra.html" > "./$palabra.$i.html" # Distintas salidas del programa, en función de la variable "salida" if [ $salida -gt 0 ] # Salida a modo TXT then w3m "./$palabra.$i.html" > "./$palabra.$i.txt" if [ $salida -gt 1 ] # En una sóla línea then sed ':a;N;$!ba;s/\n/ /g' "./$palabra.$i.txt"|sed 's/ / /g' > "./$palabra.$i.1linea" fi fi done # BORRAR indica si dejar o no los archivos que no se deseen como salida BORRAR=1 if [[ $BORRAR -eq 1 ]] && [[ $salida -gt 0 ]] then rm "./$palabra."*html if [ $salida -eq 2 ] then rm "./$palabra."*txt fi fi # SALIDA FORZADA exit

Las primeras pruebas las he realizado con la palabra palabra, como debe ser.

buscaenrae.sh 2 palabra

Intrusismos diseñando…

Aunque en realidad ni siquiera son actividades intrusistas, pues me he dedicado a copiar una plantilla que Carmen había utilizado para hacer sus carteles promocionales de las temáticas diferenciadoras de sus Clases de Tango Argentino, que luego he incluido en su página web www.carmendelarosa.com

Ella utiliza unas cuantas apps del móvil y suele quedar «resultón», pero si quieres tenerlas juntas las imágenes o usarlas en una web… acaba siendo más fácil hacerlas con herramientas, digamos, serias, como las que utilizo para diseñar las cubiertas de los libros (Inkscape sobre Linux, en resumen).

Inkscape es un programa que tiene todo lo que yo pueda necesitar en los próximos años. Se le supone capacidad (o pretensión) de emular al poderoso Ilustrator, aunque no tiene ese «flow» que tienen los productos Adobe. Es parco, algo simplón y algo inestable… pero cumple sobradamente su función. De momento, no echo nada en falta, pero quizá es que sé demasiado poco.

De momento, me sirvió para hacer en un par de horas los siguientes cartelitos para Carmen de la Rosa y su web, amén de promociones en Instagram, etc…

Towi, alias Frankenstein

Parece mentira, pero la obsolescencia programada no parece ser tan certera como afirman quienes dicen que los PC duran 5 años o las impresoras 2.

Towi es el nombre en clave (hostname) de nuestro querido ordenador de torre que usa Carmen todos los días como equipo de trabajo, completamente funcional.

Este fin de semana pasado hemos empezado a dar por perdidos algunos equipos que no dejan de funcionar, a pesar de que las necesidades de este «mundo moderno», de redes sociales, teléfonos inteligentes y esas cosas, nos hagan sentir que las velocidades de los mismos no son admisibles o son indicio de fallo, cuando sencillamente no queremos quedarnos en la fila de los «pobretones» que navegan despacio.

Esta placa de hace ya más de 10 años sigue funcionando sin problemas. Es un Pentium (de antes de la época de la serie i-3,5,7), con un sólo núcleo, con 4Gb de RAM ocupando las dos ranuritas como se ve en la imagen, en sendas tarjetas de 2Gb.

El disco duro que traía montado tenía 640Gb (sigue teniéndolos) y poco a poco se le fueron añadiendo amigos dentro, como un SSD de 120Gb en el que instalar el sistema operativo Linux (UbuntuStudio) que ha permitido seguir funcionando con mayor rapidez de la que sería posible con el Windows 7 preinstalado en el HD convencional. Por si eso fuera poco, un disco duro muy muy viejo (IDE, de hecho PATA) que no tiene las conexiones apropiadas fue adaptado (adoptado), mediante un «chismito» que permite conectar 2 discos IDE y/o uno SATA a una conexión USB. Por supuesto, los discos necesitan alimentación directa, pues el aparatejo tan sólo se limita a transferencia de datos, que no es poco. (También había probado previamente una adaptación mediante otro dispositivo de IDE a SATA, pero no funcionó bien).

Ese disco duro IDE de 3,5″, que se ve «colgando» en la fotografía anterior, estaba en una carcasa interna que dejó de funcionar, tiene 300Gb y le denominamos LACIE que era el nombre de fábrica de ese primer disco externo que compramos, hará más de 15 años.

Para poder usar la conexión USB del adaptador, adquirí por un módico precio una tarjeta PCI que proporcionaba 4 enchufes USB fuera de la caja y uno hacia el interior de la misma, que es el que se ve en la imagen siguiente:

Esta es la caja de la tarjeta en cuesión:

Algo después, adquirimos un par de nuevas tarjetas PCI-E para aumentar el número de puertos USB (en este caso 3.0) tanto por la parte trasera de la torre como por la parte frontal, a medida que Carmen necesitaba más espacio de almacenamiento, pero la verdad es que ha llegado el momento de pasar a otro equipo, pues este pequeño Frankenstein que ha llegado a tener (internamente) su Intel NH-8280-1GB, 4Gb RAM, SSD 120Gb, HDD 640Gb SATA, HDD 300Gb IDE/USB, 4+5 USB 2.0 traseros, 2 USB 2.0 delanteros, 6 USB 3.0 vía PCI-e.

A punto estuve de conectarle un cuarto disco SATA de 500 Gb de un HP Pavillion que me salió muy malo y que ha terminado por romperse a los 12 años de su compra… (quizá no tan malo, después de todo), pero era bastante engorroso seguir haciendo ampliaciones mediocres para un PC saturado.

Ha llegado el momento de comprar un nuevo equipo, que empezará siendo directamente de segunda mano, para poder sumarle el SSD de 120Gb, quizá también el HDD 640Gb SATA y, por supuesto, las tarjetas PCI-e para extender el número de puertos USB 3.0, desnudando a un santo para vestir a otro, pero es que a veces hay que dejar morir a los santos ancianos.

Y no creo que lo haga del todo pues usaré cualquier cosita para poder arrancar el equipo y que siga sirviendo con sus 4Gb de RAM como un veterano de guerra.

¿Obsolescencia programada o consumismo irresponsable?

Generador de ideas para artículos del blog

Y digo yo…

Si hace falta un generador de ideas para artículos de un blog, ¿no ha llegado el momento de dejar de tener, o mantener, el susodicho?

Hace algún tiempo un amigo me preguntó que cómo hacía para tener algo sobre lo que escribir todos los días y la verdad es que me dejó pensando en si realmente merecía la pena la mayoría de las cosas que escribo en este diario, pero como diario que es, tan sólo me limito a seguir mi mente y la mirada que hago sobre la realidad… y escribirlo.

No es tan complicado, creo. Aunque sí consume tiempo (si es que el tiempo se consume y no la vida que en él transcurre) y más si se quiere hacer con cuidado, con mimo, con corrección ortográfica e incluso política, que no veo tan mal como mucha gente parece verla.

Hoy, pongamos por caso, podría estar escribiendo sobre el porqué de la ilusión. La ilusión que me hace, por ejemplo, invitar a mi querida amiga Aída B. a cenar en casa con su pareja. La ilusión que me hace cocinar para ellas, la ilusión que me hace saber que estará en la misma ciudad que habito y que tanto nos gusta (a pesar de los pesares) durante casi un mes.

Podría estar escribiendo sobre el diseño de un menú vespertino que incluya salmón y la dificultad para encontrarlo en las pescaderías de Madrid. ¿Por qué cierran las pescaderías los lunes? ¿Acaso puede llegar a Madrid algún salmón que no sea congelado habida cuenta de dónde se suele pescar?

Podría estar escribiendo sobre el espray que he comprado para pintar unas tarjetas habitualmente llamadas postales vacacionales para enviar un correo ordinario (ahora extraordinario) a más de 30 personas y que va a incluir unos códigos BIDI o QR realizados con un programa en línea de comandos linux que ha generado sendos códigos (2 para cada destinatario), así como unas páginas web personalizadas y del hecho de que se hayan creado como archivos gráficos vectoriales que permiten escalarse hasta el infinito sin perder resolución, según dicen.

Podría estar escribiendo sobre el infinito y si tiene algún sentido más allá de las matemáticas o la teología, si creemos la mayoría de los indicios que apuntan a que el universo completo es un espacio finito, por grande que sea.

Podría estar escribiendo sobre el agua que consumo, sobre el té que me he preparado, sobre el cartón sobre la mesa, sobre el orden, el desorden y la entropía, podría estar escribiendo sobre que podría estar escribiendo o sobre qué podría estar escribiendo y sobre la diferencia que una coma pone en el texto y el contexto…

Pero hoy tengo poco tiempo (porque hay otras cosas que también quiero hacer a parte de alimentar este diario) y no sé si necesitaré algún día un generador de ideas para el blog… pero, de momento, me ha parecido sencillamente, una idea sobre la que escribir.

upgrade a linuxmint 19

¿Qué necesidad tengo de actualizar a LinuxMint 19.3 si todo me va bien con LinuxMint 18.1?

La realidad es que no tengo ninguna necesidad ahora de hacerlo, pero puede que no me venga mejor cuando el LM 18 pierda su soporte:

18.1 Serena Ubuntu Xenial Long term support release (LTS), supported until April 2021.

Es decir, que si ahora no hago nada, me veré en la tesitura de que me convenga hacer esa actualización allá por abril o mayo de este prometedor 2021, prometedor de incertidumbres y crisis sanitario-económico-sociales varias. Así que quizá es mejor planificar y anticiparme a ese año con una actualización que me dejará con la «conciencia tranquila» hasta abril del 2023.

Estoy siguiendo las instrucciones de la Comunidad de Linux Mint con todo el cuidado posible, pero sabiendo que muy probablemente algo irá mal. Así que estoy mentalizado para, en un momento dado, tener que llevar a cabo una instalación completa, borrando todo lo que tengo, reinstalando fuentes (lo que puede ser un lío), así como aplicaciones que uso y que ya ni recuerdo. A pesar de todo, hice copias de seguridad pertinentes, backups de mi trabajo en más de 5 dispositivos… y lo peor que puede pasar es que acabe perdiendo 3 días… en este periodo prevacacional en el que estoy.

Ahora mismo se está descargando todos los paquetes en local para proceder a la instalación. Cruzo los dedos y pulso Enter.

Hoy vuelvo a la normalidad

Nunca he estado en la normalidad
así que no sé a dónde volver.

Vuelvo a trabajar en el estudio
por las mañanas
en un trabajo que no suele estar remunerado
lo que no suele ser muy normal.

Vuelvo a deleitarme con estar entre
cuatro paredes
después de deleitarme con estar
entre cuatro paredes
durante más de 3 meses
lo que no suele ser muy normal.

Vuelvo a escribir en un blog
que no pretendo que tenga un número
enorme o rentable
de seguidores o subscriptores
de seguidoras o subscriptoras
lo que no suele ser muy normal.

Vuelvo a teclear en un teclado
negro
que se parece mucho al teclado
negro
en el que he estado tecleando los últimos
100 días
sin afán por sustituirlo por otro
ni adquirir un más moderno dispositivo
o más bonito
o más algo…
lo que no suele ser muy normal.

Vuelvo a perder el tiempo
que se llama vida
haciendo cosas que me gustan
aunque no me lleven a ningún sitio
ni siquiera yendo en línea recta
(si siquiera sabiendo que las rectas no existen)
lo que no suele ser muy normal.

Vuelvo a pensar en actualizar
el linux mint que tengo aunque sea una versión
que no fuese necesario
pensar en actualizar
hasta 2021
lo que no suele ser muy normal.

Vuelvo a algo que llaman normalidad
cuando ya la mayoría de las personas
que conozco
han vuelvo a algo que llaman normalidad
nueva normalidad
como si alguna vez la normalidad
pudiese ser nueva
lo que no suele ser muy normal.

Vuelvo a pensar que normalidad
no es normal
ni mortal
ni moral
ni mal
ni normativo
ni putativo
ni taxativo
ni …
lo que no suele ser muy normal.

¿Tengo arreglo?

Pruebas de edición

Este curso, estoy con total normalidad, ni nueva normalidad ni nada, maquetando el libro colectivo que suelo preparar casi a modo de regalo para las personas apuntadas a los Talleres de Poesía de Clave 53 y he apostado por un formato en el que el nombre de cada poeta figure incluido en la primera página de las 4 que tiene dedicadas, para desperdiciar el menor número de páginas posible, pues suelo dedicar una página a modo de comienzo de sección para el nombre del poeta o la poeta y su consiguiente página vacía par, lo que supone 2 páginas por cada poeta. Este año son 25 las autorías, así que sumábamos 50 páginas al libro, lo que además de encarecerlo, lo haría un poco más grueso de lo razonable.

Es un formato que ya había probado y quedaba muy elegante en el Libro Refugio que realizamos el curso pasado. Sin embargo, he querido apostar por una tipografía que no he usado hasta ahora en ningún libro y que me gusta bastante que es la Josephine Sans Serif, acompañada en citas y notas a pie de página por su familia hermana, Josephine Slab Serif, que mantiene el mismo criterio de diseño (gracias a Santiago Orozco) más o menos geométrico, pero también jugueteando con las formas de las letras, alejándome de mi habitual y bienamada Futura.

Lo que aún no he determinado es la imprenta con la que trabajaré, pero es posible que me vuelva a decantar por la que estoy ofreciendo últimamente, por su gran oferta de papeles de cubierta disponibles, Lozano Impresores, S.L. incluso aunque sea un poquito más cara. Ya veremos.

Eso sí, siempre usando, como se puede ver en las capturas de pantalla, Software Libre. En esta ocasión, Scribus 1.4.6 sobre Linux Mint 18.3 para la tripa e Inkscape 0.91 r13725 para la cubierta en vectorial.

Pruebas de páginas de impresora nueva

Tener Linux y cambiar de impresora es algo tedioso, porque siempre falta algún driver que hace que no sea tan fácil como dicen que es. Por otro lado, lo de instalar una impresora que se conecte por wifi puede ser una maldita locura, sobre todo si se trata de la conexión «simple» por WPS, pero afortunadamente la última impresora que hemos tenido que adquirir para sustituir a una Canon PIXMA que no ha funcionado nunca muy bien, permite conectarse sin hacer uso de esa presunta utilidad.

Después de instalada y conectada a la red, toca hacer las distintas pruebas de impresión desde todos los dispositivos que suelen usarla, que son principalmente nuestros dos equipos de sobremesa (que realmente están «bajomesa») y un móvil, por si alguna vez se quiere imprimir sin abrir un PC, o si deja de funcionar el driver de turno en Linux (cosa que ocurre con más frecuencia de lo que desearía cualquiera). Son hojas que me gustan mucho, aunque no tengan más que imágenes y textos técnicos orientados a probar las distintas capacidades de la impresora, pero también contienen algo de información técnica que suele ser conveniente almacenar.

Varias pruebas desde un Linux Mint 18.3 (mío) y un UbuntuStudio 18.04 (Carmen), así como desde una APP del móvil:

Esta copia es la impresa desde mi Linux Mint con el driver ippeve.ppd el martes 14 de mayo, cuando nos llegó para sustituir a la que teníamos rota.

Esta copia es la realizada tras instalar el driver del fabricante, que curiosamente funciona mucho peor que el proporcionado por Linux de manera «natural». En ella queda información sobre la IP que le asignó (y reservé posteriormente por MAC ADDRESS) el router.

Un comando utilísimo de Linux

Es una maravilla la de cosas que se pueden hacer desde línea de comandos de linux (unix, en general), así que pongo por ejemplo este pequeño portento para modificar el tamaño de todas las imágenes encontradas (podría hacer una búsqueda más restrictiva, solo basándome en la extensión de los archivos) y adaptarlas a las dimensiones que desee:

find . -type f -size +1000k -exec mogrify -resize 25% {} \;

Este comando busca los archivos mayores de 1000K (cerca de un megabyte) y reduce su tamaño (como imagen) en un 25% porcentualmente, lo que puede ser una reducción enorme de recursos para una librería de fotografías que se deseen usar en una web, que es para lo que lo estoy usando, de manera que las imágenes que sincronizo en mi base de datos de imágenes no sean desmesuradamente grandes para su posterior descarga y gestión o visualización por parte de Piwigo

Una herramienta tan poderosa como para eliminar o modificar espacios de nombres de archivos, o caracteres no admitidos, como nuestra bienamada ñ, o las acentuaciones, o todas las mayúsculas por minúsculas…

find . -name '* *' -exec rename 's/ /_/g' {} \;

Este comando busca archivos o carpetas (no está especificado el type) que contengan espacios en su nombre (podría haberse buscado otra cosa) y se sustituye por guiones bajos con el comando rename.

find . -depth -exec rename -n y/A-Z/a-z/ {} \;

Cambiamos todas las mayúsculas por minúsculas, tanto en archivos como en carpetas. (Quitando el «-n», lo efectuará, de lo contrario, muestra lo que haría, pero no lo hace)

También me permitiría cambiar las ñ o Ñ por caracteres de mi elección, pero eso es mejor hacerlo con cuidado, porque sustituir por «n» o «N» puede borrar otro archivo… así que es preferible, primero, saber dónde están esos archivos con un comando que los busque como este:

find . -name "*[ñ|Ñ]*" -print

 

Otras opciones increíbles del programa mogrify incluyen la rotación arbitraria de bloque de imágenes, o la reducción absoluta a, por ejemplo, 1024 de ancho forzoso con el atributo «resize 1024».

mogrify -resize 1024 *.jpg
mogrify -rotate "-90" *.jpg

Después de pasar la mañana del martes compleja y parte de la tarde con esto para modificar algunos cientos o miles de archivos, me encuentro esta joya del 2005 que contiene unos cuantos scripts mucho mejor documentados y programados de lo que yo hubiera hecho y con una sencillez tremenda para modificarlos y adaptarlos a lo que necesite.

Esto no es una broma