🔒
Hay nuevos artículos disponibles. Pincha para refrescar la página.
✇Victorhck in the free world

Añadir palabra clave para que Thunderbird nos recuerde si queremos añadir un adjunto

Por: victorhck

El cliente de correo Thunderbird tiene la opción de recordarnos que tenemos que adjuntar un archivo cuando en el cuerpo del correo aparece cierta palabra clave. Veamos cómo añadir una nueva

Logotipo de Thunderbird. Un pájaro de color azul enroscado alrededor de un sobre de correos y el nombre de la aplicación

Desde hace años utilizo Thunderbird como mi cliente de correo electrónico. Y en este caso quiero compartir un sencillo truco que he modificado hace algún tiempo, para no olvidarnos de adjuntar un archivo a un correo que enviamos.

Ha pasado muchas veces, eso de enviar un correo que debería ir con un adjunto y al final le das a enviar… y se te olvidó añadir el fichero adjunto que querías incluir en el correo. Así que a enviar un segundo correo ahora ya sí con el adjunto que queríamos.

Con Thunderbird, eso no pasa (o es más difícil). Mientras estás redactando el correo. Si Thunderbird detecta una de las palabras clave que están configuradas, entiende que tienes que añadir un adjunto y te muestra una alerta visual para que no se te olvide y hacerlo en ese momento o más adelante.

Algunas de esas palabras clave son: adjunto, adjuntado, envío, y otras. De esta forma no olvido el adjunto que quiero incluir

La situación es la siguiente. Estoy escribiendo un correo en Thunderbird, y al incluir una de esas palabras clave, salta la alerta. Pero a veces escribo en inglés y no hay en esa lista de palabras clave ninguna que me recuerde que ese correo quizás deba incluir un adjunto.

Así que lo que quiero es añadir una palabra clave a esa lista para que también sea tenida en cuenta. En este caso quiero añadir la palabra Attached. Si es tu caso u otro similar, añadir palabras clave es muy sencillo.

En el menú de haburguesa (las tres rayitas horizontales en la esquina superior derecha), seleccionamos Ajustes y en la siguiente pantalla seleccionamos la opción Redacción y bajamos hasta la sección Adjuntos.

Y ahí podemos inhabilitar esa comprobación para no olvidar adjuntos, y también añadir palabras clave. En dicha lista añado la palabra que quiero, en mi caso Attached y también puedo eliminar otras o añadir más palabras. Acepto y ya estaría.

Ahora Thunderbird comprueba más palabras para que no me olvide de adjuntar ese pobre archivo adjunto que si no se quedará solitario a las puertas de viajar por los vericuetos de internet.

victorhck

Logotipo de Thunderbird. Un pájaro de color azul enroscado alrededor de un sobre de correos y el nombre de la aplicación

✇Victorhck in the free world

Cambiar el número de elementos mostrados en la página de pestaña nueva del navegador Firefox

Por: victorhck

Vamos a cambiar la cantidad de enlaces habituales que se muestran en la página de nueva pestaña del navegador Firefox para ajustarlo a nuestros gustos

Kit, la adorable mascota de Firefox en tonos rojizos/anaranjados formando un corazón y con un corazón púrpura sobre su cabeza

Desde hace ya muuuchos años, utilizo la página de nueva pestaña que ofrece el navegador Firefox. Y dentro de esta, aunque se pueden añadir notas, temporizadores, etc, yo quito enlaces patrocinados, el tiempo, y barras de búsqueda quedándome únicamente unas filas en las que se muestran los emblemas de las webs que más visito, para tenerlas rápidamente accesibles.

Desde la publicación de Firefox 151, esta página sencilla, ha mejora un poco su aspecto y ahora muestra unas animaciones al pasar el cursor por encima. Desde esa propia página podremos configurar el número de filas que queremos que se muestren, hasta un máximo de 4.

Ahora veremos cómo modificar el número de elementos por fila que queremos que aparezcan.

Las pantallas de nuestros equipos portátiles o monitores suelen tener un formato apaisado, siendo más largas que altas, por tanto creo que tiene sentido poder aprovechar todo ese espacio en las filas que nos ofrece Firefox en la página de nueva pestaña.

Como he dicho el número de filas es muy accesible desde la propia página pinchando en el botón inferior derecha en Personalizar y en la siguiente pantalla podremos escoger el número de filas.

Pero no así el número de elementos que queremos que se muestren por fila, y no sé porqué esa opción no tiene un acceso sencillo similar en la pantalla de personalización.

Sea como fuere, podremos cambiar ese número de sitios mostrados entrando en la configuración escribiendo about:config en la barra de direcciones y aceptando que no vamos a romper nada.

En la siguiente pantalla, en el cuadro de búsqueda escribimos:

browser.newtabpage.activity-stream.topSitesMaxSitesPerRow

Que probablemente tenga un valor de 8. Yo en mi caso lo he modificado a 11 y solo he dejado 3 filas, para que queden centrados los enlaces en la pantalla y no moleste a la imagen que tengo de fondo.

Podemos abrir una nueva pestaña y ver que el formato ha cambiado y podremos ajustarlo y ver cómo cambia de manera dinámica. Ahora ya es cuestión de gustos personales y preferencias, así que déjalo como más te guste…

victorhck

Kit, la adorable mascota de Firefox en tonos rojizos/anaranjados formando un corazón y con un corazón púrpura sobre su cabeza

✇Victorhck in the free world

Previsualizar archivos MarkDown en el editor Kate de #KDE

Por: victorhck

Veamos cómo previsualizar el renderizado de archivos en formato markdown en el editor Kate de KDE

Utilizo mucho los archivos en formato markdown y si no los edito en la terminal mediante Vim utilizo Kate como editor principal. Y me acabo de enterar que Kate posee la opción de poder previsualizar el resultado del renderizado de markdown. Veamos cómo.

Abrimos Kate → Preferencias → Configurar Kate → Complementos

Y activamos el complemento «Vista previa del documento» y aceptamos los cambios. Ahora en la parte derecha aparecerá un icono de vista previa. O en el menú Ver → Vista de herramientas → Mostrar vista previa

Esto abrirá un panel lateral que renderizará los archivos Markdown ofreciendote una vista previa de cómo quedará, mientras que en el panel donde se edita tendrás el resaltado de sintaxis.

También lo he probado con archivos en formato HTML, pero no ha funcionado. Para ese formato quizás sea mejor seguir utilizando un navegador.

Y esto es todo lo que quería compartir por hoy.

Botón con el icono de KDE y el texto: Powered by KDE

victorhck

Botón con el icono de KDE y el texto: Powered by KDE

✇Radios Libres

Lanzamos SARA: un nuevo automatizador radial libre

Por: Radios Libres

La Red de Radios Comunitarias y Software Libre (liberaturadio.org), a la que pertenece Radios Libres, presenta un nuevo Software de Automatización RAdial (SARA libre) que se suma a G-Radio, otro desarrollo de esa comunidad, y a Rivendell completando la familia de automatizadores con licencias libres que funcionan en distintas distribuciones GNU-Linux.

SARA libre está en su fase ALFA. Esto significa que no se recomienda para usarse en las emisoras como automatizador principal. Esta primera versión se ha liberado para que más radios lo prueben y puedan reportar fallos (bugs) o hacer sugerencias.

Puedes descargar los archivos de instalación en la página web de SARA Libre. Y aquí tienes los videotutoriales realizados por Pablo López para comenzar a probar.

¿Qué puede hacer SARA Libre?

  • Compatible con GNU/Linux derivados de Debian 12+ y Devuan 5+, con soporte tanto para
    PipeWire como para PulseAudio.
  • Desarrollado en C++17 y Qt6. Usa GStreamer como motor de audio. 1.0 | SQLite WAL | CMake
  • Está diseñado para funcionar 24/7 en computadoras con hardware modesto con un consumo reducido de recursos de memoria y CPU.
  • Permite programar listas de reproducción por horario, eventos disparados a horas específicas, locuciones de hora, streams remotos, pisadores y crossfades configurables.
  • Eventos que pueden ser programados con prioridad, inmediatez y vigencia.
  • Se puede incluir nuevas pistas a varios eventos programados previamente.
  • Asistente en vivo (botonera) con 12 botones por página (presets) que se pueden guardar y configurar para que cada programa tenga la suya.
  • Locuciones de hora generadas automáticamente y programables en eventos o en programaciones musicales.
  • Reproducción de streams HTTP/HTTPS con reintentos automáticos si se corta la conexión.
  • Crossfades entre pistas y fade-out manual.
  • Pisadores automáticos o individuales.
  • Detección de silencio en archivos para auto-skip (salta a la siguiente si hay silencio prolongado).
  • Auditoría completa de reproducción y monitores particulares de reportes gráficos.
  • Modo manual o automático
  • Recuperación de estado tras corte de luz.
  • Distintos roles: operación, programación y administración. Con gestión de perfiles a través de contraseñas.
  • Preparado para funcionar en distintos idiomas y recibir nuevas traducciones.

¿Por qué se llama SARA y quién lo desarrolla?

Son las siglas de Software de Automatización RAdial. Además, le sumamos la palabra “libre” para enfatizar esta característica. Como sabes, la comunidad de LiberaTuRadio.org promueve el software y las tecnologías libres entre los medios alternativos y comunitarios. Además de libre (tiene una licencia GPL-3+) es gratuito.

SARA tiene opciones similares a otros programas de automatización radiofónica como G-Radio, Radit, Dinesat, Rivendell o Zara Radio. Pero se nutre de la experiencia de radialistas comunitarios de América Latina y el Caribe que se han involucrado desde el inicio al desarrollo, diseñando su arquitectura y lógica de funcionamiento. Algunos de ellos son José Luis Travieso (HiperActiva FM, Uruguay), Agustín Fontaine (Una Radio Muchas Voces, Argentina), Juan Burba (Radio Tierra Campesina, Argentina), Ana Salgado y Nacho Contreras (Radio Tsinaka, México). El desarrollo ha estado coordinado por Pablo López y Santiago García Gago, con la asesoría técnica de Javier Obregón. Nos hemos apoyado en herramientas de ia, principalmente Claude y los modelos abiertos de Qwen.

Si quieres ser parte de esta comunidad, probando, traduciendo, sugiriendo, visita la página oficial de SARA Libre o escríbenos.

✇Victorhck in the free world

Cómo modificar en Firefox el desagradable sonido que reproduce al buscar un texto que no encuentra

Por: victorhck

Al buscar un texto en Firefox mediante Ctrl+F si no encuentra el texto buscado, Firefox reproduce un sonido bastante desagradable. Vamos a modificar eso para que reproduzca uno de nuestro sistema

Kit, la adorable mascota de Firefox en tonos rojizos/anaranjados formando un corazón y con un corazón púrpura sobre su cabeza
Kit: La mascota de Firefox

En el navegador Firefox, mediante la combinación de teclas Ctrl+F nos abre una caja de búsqueda en la parte inferior, donde podemos introducir un texto y el navegador encontrará todas las ocurrencias que existan en la página web que esté mostrando, una herramienta que utilizo mucho y es muy útil.

Solo tengo un pero, cuando haces una búsqueda de un texto que no encuentra en la página web, además de una alerta visual en la propia caja de búsqueda, emite un ruido bastante desagradable y que suele pegarme unos sustos tremendos si tengo el equipo conectado al equipo de música.

Siempre había querido cambiar ese comportamiento, pero nunca me había puesto en serio a hacerlo. Hasta hoy. Así que si a ti también te molesta ese desagradable sonido, te cuento cómo lo cambié yo y si a ti también te puede servir.

En primer lugar aclarar que estoy en openSUSE Tumbleweed con Plasma de KDE como entorno de escritorio, por tanto si estás en otro escritorio u otra distribución de GNU/Linux u otro sistema, quizás tengas que adaptarlo a tus propias circunstancias. Te cuento…

Eliminar el sonido del efecto

Como muchas cosas en Firefox, se pueden configurar entrando en el apartado de about:config y modificando la variable adecuada. En este caso podemos eliminar ese molesto sonido poniendo a false la siguiente variable:

accessibility.typeaheadfind.enablesound

Ale, con eso ya no sonará nada, si es lo que quieres.

Modificar el sonido en Plasma de KDE

Pero en mi caso, no quería eliminar el sonido, simplemente cambiarlo por otro menos desagradable y en conjunción con mi escritorio.

En mi Plasma utilizo los efectos de sonido de ocean. Si vas a Preferencias del sistema de Plasma y a la sección sonidos del sistema, podrás configurar o comprobar cual utilizas.

Quiero modificar el sonido actual por otro que sea del propio sistema. La ruta donde se encuentran los sonidos es la siguiente:

/usr/share/sounds/ocean/stereo

De entre todos ellos he escogido el sonido dialog-information.oga. Así que entro en Firefox about:config y busco lo siguiente:

accessibility.typeaheadfind.soundURL

Y ahí le digo que utilice el archivo y la ruta que deseo, poniendo lo siguiente:

file:///usr/share/sounds/ocean/stereo/dialog-information.oga

Acepto y ya está cambiada dicha sonido, reproduciendo ahora un sonido que se integra con el escritorio y desde luego es menos desagradable que el anterior.


Si a ti también te molesta ese ruido predeterminado y lo quieres cambiar, sigue el tutorial adaptándolo a tu sistema y lo conseguirás. Esto es algo que quería hacer desde hace años y hoy me he puesto manos a la obra.

Enlaces de interés

victorhck

Kit, la adorable mascota de Firefox en tonos rojizos/anaranjados formando un corazón y con un corazón púrpura sobre su cabeza

✇Victorhck in the free world

Firefox no muestra los kanjis o caracteres japoneses (ni chinos ni koreanos) en Plasma

Por: victorhck

Cómo solucionar que Firefox muestre los caracteres en idioma japonés y también chinos y koreanos

Se ven un montón de fichas de distintos colores con formas de cono y encima una esfera sobre un tablero blanco y líneas que las interconectan.

Al navegar por la red con mi navegador Firefox, ya sea en la Wikipedia u otras páginas, que tengan caracteres o kanjis en japonés (y supongo que también en chino y koreano, aunque estos últimos no lo he comprobado), no se mostraban los propios caracteres y se mostraban unos pequeños cuadritos.

No es que si se muestran los caracteres, entendería lo que dicen, pero sí podría copiarlos y traducirlos con un traductor. Además de ser poco estético y dar la impresión de haber algo roto. Veamos cómo lo solucioné.

Cabe decir aquí que el problema no era de Firefox, el navegador simplemente no puede mostrar esos caracteres, porque no hay una fuente en el sistema que los proporcione, así que se muestran esos cuadritos que sustituyen los kanjis.

Buscando por la red, encontré un hilo en Reddit (he perdido el enlace) en el que mencionaban que el problema es de Plasma, y es que faltan las fuentes necesarias. En mi Tumbleweed con Plasma utilizo la fuente Noto Sans, no sé si con otras fuentes pasará lo mismo.

Para solucionar el problema tenía que instalar Noto Sans cjk (chinese, japanese, korean). Así que busqué en los repositorios algo con cjk y dio resultado. Tuve que instalar el siguiente paquete:

sudo zypper in google-noto-sans-cjk-fonts     

Finalizada la instalación ya se mostraban correctamente los caracteres. Para comprobarlo visité el siguiente enlace, que ahora se ve correctamente… (aunque siga sin entenderlo).

victorhck

Se ven un montón de fichas de distintos colores con formas de cono y encima una esfera sobre un tablero blanco y líneas que las interconectan.

✇Radios Libres

Periodismo seguro para la incidencia

Por: Radios Libres

Dos guías de DW Akademie para defender los territorios empleando el periodismo de investigación desde el abordaje de la Acción Sin Daño.

“Un periodismo al servicio de las comunidades que construye audiencias con ellas. Los medios comunitarios y algunos locales son los últimos bastiones de un periodismo directamente vinculado a sus territorios. Desde estos ecosistemas se puede realizar un ejercicio comunicativo relevante para la sociedad, que tenga impacto y que apunte a una posible incidencia en lo social-político”.

Con estas palabras, Rodrigo Villarzú, director del departamento de América Latina y el Caribe de DW Akademie, introduce la guía “Periodismo comunitario y local en defensa de la Amazonía: hoja de ruta para medios y organizaciones en la cocreación de estrategias comunicativas de impacto e incidencia”. Esta guía práctica sistematiza aprendizajes y metodologías desarrolladas entre 2022 y 2025 junto a Agenda Propia (Colombia), CORAPE (Ecuador) y Servindi (Perú).

El núcleo metodológico propone ocho pasos que van desde la planificación estratégica y el mapeo de actores y riesgos, hasta la investigación periodística, la difusión participativa y la evaluación de resultados. La guía incluye herramientas prácticas pensadas para fortalecer capacidades y facilitar procesos colaborativos entre periodistas, comunicadores comunitarios y organizaciones indígenas, entre otros actores clave.

“La publicación demuestra que el periodismo local y comunitario, cuando está arraigado en los territorios y conectado con sus audiencias, puede cerrar brechas de información, fortalecer la participación ciudadana y contribuir a transformaciones sociales y ambientales. La guía invita, en definitiva, a repensar el periodismo como una práctica colectiva, útil y necesaria para la defensa de la Amazonía y para comunidades mejor informadas, críticas y articuladas.”

Este primer texto se complementa con “Protección para un periodismo comunitario y local en la Amazonía: guía para investigaciones con enfoque de Acción Sin Daño en Colombia, Ecuador y Perú”, que aborda la seguridad integral de periodistas, fuentes y comunidades en contextos de alta conflictividad socioambiental, profundizando sobre el diseño de protocolos que mitiguen los riesgos del trabajo periodístico y de quienes defienden el medio ambiente, promoviendo una cultura de la seguridad desde la Acción Sin Daño. Ambos tienen una licencia Creative Commons BY-NC-ND.

✇Victorhck in the free world

Reproducir con Amarok archivos .wma en openSUSE

Por: victorhck

Cómo hacer que Amarok reproduzca archivos de música en formato .wma en openSUSE

Portada del reproductor de música Amarok, se ven unas barras azules verticales, sobre ellas en la parte superior el nombre del software: Amarok. Y el logo, un lobo aullador

Tenía un par de discos en mi colección de música en formato .wma que el reproductor Amarok no me reproducía en mi sistema openSUSE Tumbleweed. Te cuento cómo lo solucioné.

Un sencillo tutorial para mi yo del futuro o para ti que andas buscando una solución similar.

Lo primero decir que el reproductor VLC sí que reproducía la música en ese formato sin problema. Pero claro, VLC instala sus propios códecs y Amarok depende de GStreamer, de ahí la diferencia. Y con esto de los códecs hay un lío en GNU/Linux tremendo… Que si licencias, que si hay que instalar cosas extras, etc… En fin, lo pude solucionar de manera muy sencilla.

Lo primero asegurarte de que en tu openSUSE tienes añadido el repositorio packman. No es oficial, pero sí oficioso, y es el sitio donde buscar todo aquello que openSUSE por cuestiones de licencias no puede incluir en sus repositorios.

Así que es un imprescindible y también recomendar que la prioridad del repositorio la bajes a 70. Cuanto menor es el número, mayor es la prioridad. Es decir, openSUSE si encuentra dos paquetes iguales, instalará el del repositorio de mayor prioridad (el que tenga el número más bajo). Y para temas de códecs, etc siempre es mejor utilizar los de packman.

Vale, con el repositorio ya configurado (es una de las primeras cosas a realizar cuando instalas openSUSE) ahora toca instalar los paquetes necesarios para que Amarok reproduzca el formato .wma.

Para ello instalamos los siguientes paquetes (desde packman)

sudo zypper install gstreamer-plugins-bad gstreamer-plugins-ugly gstreamer-plugins-libav 

A mí únicamente me faltaba gstreamer-plugins-libav, así que una vez instalado ya pude reproducir con Amarok ese par de discos (un par de volúmenes recopilatorios de Roky Erickson por si tenías curiosidad, de su etapa en solitario y «alucinada» por sus fantasmas personales).

victorhck

Portada del reproductor de música Amarok, se ven unas barras azules verticales, sobre ellas en la parte superior el nombre del software: Amarok. Y el logo, un lobo aullador

✇Victorhck in the free world

Acceder a cockpit de openSUSE desde otro equipo remoto

Por: victorhck

Veamos cómo podemos acceder al centro de control Cockpit en openSUSE desde otro equipo

interfaz de cockpit mostrando diferentes configuraciones y menus del sistema openSUSE

Desde hace un tiempo estoy probando cockpit, el nuevo centro de control de openSUSE para gestionar el sistema. Aquí escribí cómo lo instalé:

Uno de sus atractivos es el poder tener una interfaz gráfica para la gestión de servidores o equipos remotos directamente desde el navegador.

Cockpit de momento gestiona muchos aspectos del sistema en openSUSE, pero todavía no está preparado para sustituir por completo a YaST. Sin embargo algo atractivo es el poder acceder de manera remota mediante un navegador web al equipo en cuestión y gestionar mediante una interfaz gráfica ciertos aspectos del sistema remoto.

Veamos cómo poder acceder a cockpit en un equipo o servidor o servidor remoto.

Lo primero es habilitar en el cortafuegos el puerto 9090 por el que accedemos a cockpit. Vamos a habilitar el servicio desde el propio cockpit para ir familiarizándonos con la interfaz.

Habilitar el servicio cokpit en el cortafuegos

En el equipo accedemos a cockpit bien con el lanzador o en el navegador con localhost:9090, y nos registramos con acceso ilimitado.

Ahora en el menú de la izquierda seleccionamos el apartado Redes y ahora pulsamos sobre editar reglas y zonas. En la nueva pantalla pulsamos sobre el botón añadir servicios.

En la nueva pantalla en el cuadro de búsqueda introducimos el texto cockpit y lo seleccionamos y añadimos el servicio. También tenía abierto el puerto 22 de ssh y la clave de confianza. No sé si después es necesario reiniciar el equipo…

Esto también lo podemos hacer desde la terminal, tal como nos dice la documentación, ejecutando el siguiente comando:

sudo firewall-cmd --add-service=cockpit --permanent && sudo firewall-cmd --reload

Acceder en remoto

Ahora ya desde otro equipo en remoto podremos acceder al gestor cockpit introduciendo en el navegador la <dirección_IP>:9090. En mi caso, como está dentro de mi propia red local accedo mediante su IP local 192.168.1.42:9090 desde el navegador.

Al acceder me da una advertencia por el certificado de seguridad. Doy a avanzado y continuo aceptando el riesgo y ya tengo acceso a cockpit desde una máquina remota. Si el servidor estuviera fuera de nuestra red local estaría bien configurar un certificado válido para una conexión https.

Cuidado que teniendo acceso a cockpit en remoto hay acceso a muchas configuraciones. También tendremos acceso a un terminal dentro del propio cockpit, sin necesidad de acceder mediante ssh al equipo.

Cockpit facilita mucho la gestión remota de un sistema desde el navegador, algo especialmente útil para equipos en red local o pequeños servidores.

Eso sí, conviene no olvidar la seguridad: abrir el acceso implica exponer parte del sistema, por lo que es recomendable limitarlo a redes de confianza o reforzarlo con certificados y otras medidas adicionales.

victorhck

interfaz de cockpit mostrando diferentes configuraciones y menus del sistema openSUSE

✇Victorhck in the free world

Probando Cockpit, el sustituto de YaST en #openSUSE Tumbleweed

Por: victorhck

Cockpit en openSUSE es el sustituto ya «de facto» de YaST a la hora de configurar diversos aspectos de nuestro sistema openSUSE

interfaz de cockpit mostrando diferentes configuraciones y menus del sistema openSUSE

Desde hace tiempo lo vengo escribiendo en el blog, YaST la gran herramienta de openSUSE para instalar la distribución y configurar diversas partes del sistema, está siendo reemplazada cockpit. Una interfaz gráfica basada en tecnología web para la gestión de nuestro openSUSE.

Agama toma el relevo en cuestiones relacionadas con la instalación de openSUSE, Myrlyn como gestor de paquetes y cockpit como reemplazo a la gestión de configuraciones del sistema.

Me resistía a dar el paso, pero como ya parece inevitable, quise vencer mi reticencia y probar cockpit en mi openSUSE Tumbleweed y me ha gustado lo que he visto.

El detonante fue leer sobre el desarrollo de una nueva herramienta para facilitar la instalación y el uso de cockpit. Podéis leer el artículo en este enlace:

En él, nos habla básicamente sobre el desarrollo de un lanzador de cockpit que facilita muchas cosas, instala y configura varias opciones necesarias y nos ofrece un icono lanzador para desde nuestro menú de aplicaciones poder lanzar cockpit facilmente.

Esto es interesante, porque al ser una aplicación basada en web podríamos acceder a ella desde un navegador web, pero de esta manera es más sencillo (creo yo, aunque la alternativa tampoco es que fuera complicada).

En fin que siguiendo ese anuncio instalamos el lanzador propiamente dicho mediante:

sudo zypper install cockpit-client-launcher

Y también el patrón de diversos paquetes necesarios para que tengamos bastantes módulo con los que trabajar:

sudo zypper install -t pattern cockpit

Al igual que YaST, cockpit también es modular y quizás no necesitamos todos los módulos de configuración. Por ejemplo yo no utilizo Brtfs, por tanto no necesito el módulo de gestión de snapshots que este sistema de archivos ofrece. O tampoco las actualizaciones transaccionales, etc.

Finalizada la instalación lancé la aplicación desde el lanzador recién instalado y pide un par de veces la contraseña de root para configurar ciertos aspectos de la herramienta. El lanzador activa automáticamente los servicios de sistemas y la configuración del firewall necesarios.

Terminado todo, no me abria cockpit. Cabe mencionar que sí podía acceder a la herramienta mediante un navegador web y en una pestaña accediento a localhost:9090. Pero no se abría desde el lanzador reción instalado

Lanzando la utilidad desde una terminal me daba el siguiente error:

$ cockpit-client-launcher                                                                                                                                                           

Traceback (most recent call last):
  File "/usr/libexec/cockpit-client", line 20, in <module>
    gi.require_version("Gtk", "4.0")
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/usr/lib64/python3.13/site-packages/gi/__init__.py", line 153, in require_version
    raise ValueError(f"Namespace {namespace} not available for version {version}")
ValueError: Namespace Gtk not available for version 4.0

Después de unas cuantas vueltas, parece ser que faltaban ciertos paquetes por instalar. Después de instalar uno, me daba error el siguiente, etc. Finalmente tuve que instalar diferentes paquetes relacionados con GTK para que la aplicación funcionara.

Debí instalar lo siguiente (con sus correspondientes dependencias):

  • gtk4
  • typelib-1_0-Gtk-4_0
  • typelib-1_0-WebKit-6_0
  • typelib-1_0-Adw-1

Después de todo eso, ya pude lanzar la aplicación desde el lanzador. Supongo que en el futuro solucionen eso y pongan como dependencias todos los paquetes necesarios para que el lanzador funcione sin problemas a la primera.

Ahora ya sí, tocaba echar un vistazo a toda la interfaz e ir familiarizándose con todas sus opciones, menús, etc.

Nos ofrece una visión global con diferente información rápida sobre el sistema y en la parte izquierda tenemos un par de secciones: Sistema y Herramientas con diferentes subsecciones en las que podremos entrar a configurar lo que sea necesario: Almacenamiento, redes, repositorios, paquetes de software y más cosas.

La interfaz permite utilizar un tema claro u oscuro y es limpia y bien organizada lo poco que he visto. Hay cosas que nos son más o menos familiares por su semejanza con su equivalente en YaST, pero otras son totalmente nuevas y con un aspecto más actual. Renovarse o morir…

Se ve el camaleón mascota de openSUSE dentro de un flotador salvavidas.

victorhck

interfaz de cockpit mostrando diferentes configuraciones y menus del sistema openSUSE

Se ve el camaleón mascota de openSUSE dentro de un flotador salvavidas.

✇Victorhck in the free world

Instalar Firefox Beta en #openSUSE

Por: victorhck

Veamos cómo añadir el repositorio oficial de Firefox para instalar la versión Beta del navegador Firefox

Imagen con los distintos logotipos del navegador Firefox según sea la versión final, la beta, Nightly

En un artículo anterior, ya publiqué cómo poder instalar Firefox versión Nightly en openSUSE, mediante el repositorio oficial que mantiene Mozilla en el que se pone a disposición de los usuarios esta versión del navegador.

Ahora, también han creado un repositorio oficial desde el que podremos instalar Firefox Beta. Estas versiones experimentales del navegador Firefox se pueden tener instaladas junto con la versión estable y convivir sin problemas. Esto nos servirá para probar las novedades de este navegador.

Veamos cómo añadir el repositorio de Mozilla para instalar Firefox Beta en openSUSE. Si ya tienes configurado el repositorio RPM de Mozilla, puedes instalar Firefox Beta mediante zypper. Si no, sigue estos pasos.

Al instalar Firefox beta desde los repositorios oficiales de Mozilla, esto nos ofrece:

  • Mejor rendimiento gracias a las optimizaciones oficiales avanzadas basadas en compiladores
  • Las actualizaciones son más rápidas porque la gestión.rpm está integrada en el proceso de lanzamiento de Firefox
  • Binarios reforzados con todas las configuraciones de seguridad activadas durante la compilación
  • No hace falta crear tu propio archivo.desktop.

Vamos a añadir la firma de seguridad y el repositorio correspondiente. Para ello abrimos una terminal y ejecutamos los siguiente comandos:

sudo rpm --import https://packages.mozilla.org/rpm/firefox/signing-key.gpg
sudo zypper ar --gpgcheck-allow-unsigned-repo https://packages.mozilla.org/rpm/firefox mozilla
sudo zypper refresh
sudo zypper install firefox-beta

El paquete del idioma se tendría que seleccionar automáticamente como dependencia.

Te vuelvo a recordar que puedes tener instaladas las tres versiones del navegador Firefox en tu equipo sin problema y utilizar una u otra cuando los desees, para probar novedades, reportar problemas, o lo que quieras.

Enlaces de interés

victorhck

Imagen con los distintos logotipos del navegador Firefox según sea la versión final, la beta, Nightly

✇Victorhck in the free world

Probando #Hyprland por primera vez en #openSUSE Tumbleweed

Por: victorhck

Pruebo el gestor de ventanas Hyprland por primera vez en mi openSUSE Tumbleweed

Captura de pantalla de Hyprland en openSUSE. çse ven dos terminales mostrando información del sistema

Desde hace un tiempo, dentro del mundo de GNU/Linux, ha despuntado un nuevo gestor de ventanas de tipo tiling llamado Hyprland. La novedad es que utiliza Wayland y ofrece vistosas animaciones composiciones de ventanas, debido a que se puede configurar cada aspecto del escritorio.

Ya había utilizado algún tiempo i3wm como gestor tiling de ventanas, pero Hyprland venía a dar un salto cualitativo y actualizado a esa opción. Así que quise probarlo y ver qué aspecto tiene…

Lo probé hace un tiempo, instalando Hyprland en un equipo de prueba en openSUSE desde sus repositorios y la experiencia fue… nefasta. Hyprland necesita mucha configuración y complementos para empezar a hacer utilizable un sistema.

Pero algo me hizo cambiar de idea y volver a probar Hyprland como un novato…

El pasado febrero de 2026 Lubos Kocman publicó un mensaje en la lista de correo de openSUSE, donde informaba de que se había creado un «patrón» de instalación relativo a Hyprland, para ofrecer esa alternativa a los usuarios de openSUSE. El correo lo puedes encontrar en este enlace:

En resumen comentaba que se iba a crear un «patrón» de instalación de Hyprland y que esto incluiría ciertas configuraciones y complementos necesarios para empezar a utilizar el sistema nada más instalado.

Ese patrón de instalación incluiría:

  • greetd con gtkgreet + cage como gestor de login sencillo (se evitó sddm porque arrastra unas 150 dependencias adicionales).
  • Hyprland con citas de bienvenida (“splash quotes”) de Gertjan.
  • waybar, bien integrada con el sistema.
  • opensuse-welcome-launcher y el binario estático opensuse-welcome.
  • hyprland-qtutils para evitar que Hyprland se queje por la ausencia de `hyprland-guiutils y para ofrecer un diálogo cuando hay una actualización de Hyprland.
  • hyprpaper con un fondo de pantalla de openSUSE basado en un wallpaper de Kraith para Hyprland. (no lo he visto)

Atajos de teclado por defecto:

  • Terminal kitty con Super+q
  • Gestor de archivos Thunar con Super+e.
  • Capturas de pantalla con grim usando la tecla de Impr Pant.
  • Lanzador nwg-drawer con Super+r.
  • Super+m cierra la sesión

Filosofía de configuración

  • La configuración está pensada como mínima, sin imponer demasiado al usuario.
  • Se plantea incluso si se podría prescindir de qtutils.
  • El paquete de “branding” instala configuraciones por defecto en /etc/xdg respetando siempre la configuración del usuario.

Así que ahora sí, quise volver a probarlo. Abrí Myrlyn, el gestor gráfico de paquetes de openSUSE, fui al apartado de Patrones o Patterns y seleccione el compositor Hyprland y Hyprland plugins, lo que selecciona para instalar un montón de software adicional.

Terminado el proceso de instalación de todo el software, cerré la sesión actual y entré en mi recién estrenada sesión de Hyprland. Bueno, ahora ya era otra cosa. Ya había algo más parecido a un sistema.

Recién llegado a Hyprland esto es lo que tienes que hacer

Lo primero saber que todos estos gestores de ventanas tiling, tienen un archivo de configuración desde el cual se gestionan todos o muchos de los aspectos y comportamientos del sistema: atajos de teclado, comportamiento de las ventanas, espacios de trabajo, etc…

En openSUSE Tumbleweed lo primero que hice fue editar el archivo /home/<mi_usuario>/.config/hyp/hyprland.conf.

Si no existe puedes crear la ruta y copiar el archivo que existe en: /usr/share/hypr/hyprland.conf Y ya en tu home editar en ese archivo lo que quieras.

Esto fue lo primero que modifiqué:

  • El esquema del teclado a español. La variable kb_layout = es
  • Yo quiero seguir utilizando Dolphin como gestor de archivos, quiero konsole como terminal y wofi como lanzador de programas. Así que:
    • $terminal = konsole
    • $fileManager = dolphin
    • $menu = wofi --show drun --insensitive
  • El cursor de Hyprland no me gusta nada, así que configuré uno bien conocido como Adwaita (si lo tienes instalado en tu equipo u el que prefieras)
    • env = XCURSOR_THEME,Adwaita
    • env = XCURSOR_SIZE,16
    • env = HYPRCURSOR_THEME,Adwaita
    • env = HYPRCURSOR_SIZE,16
  • Reduje el valor de las «gaps» o la separación de las ventanas entre sí, y de estas con el exteriror y el borde de las ventanas:
    • gaps_in = 3
    • gaps_out = 10
    • border_size = 1

Atajos de teclado

Igual que en i3wm, el escritorio está pensado para utilizarse mediante el teclado. Pulsando la tecla «super» o la del icono de Windows (si la tienes) y otra tecla lanzarás las aplicaciones predeterminadas. En mi caso:

  • Super + Q → Abre la terminal. (Prueba a abrir varias para ver cómo se van haciendo sitio)
  • Super + C → Para cerrar la ventana actual. Aprovecha a cerrar todas las terminales que abriste antes.
  • Super + M → Ejecuta un comando para cerrar la sesión
  • Super + E → Abre el gestor de archivos, en mi caso Dolphin
  • Super + V → Hace la ventana activa flotante y la podrás mover por el escritorio
  • Super + R → Abre el menú lanzador de aplicaciones, en mi caso wofi
  • Super + Espacio → Igual al anterior

Por supuesto todos estos atajos los puedes cambiar a tu preferencia.

Para mover el foco a una ventana u otra, la tecla super y las teclas de las flechas.

Para ir a un espacio de trabajo u otro, mediante la tecla super y los números del 1 al 0, así tienes 10 espacios de trabajo en los que abrir tus ventanas.

Si una ventana la tienes abierta en el espacio 1 y la quieres llevar al 2, mediante Super + Shift + 2 y llevará esa ventana al espacio 2. Similar con cualquiera de los espacios disponibles.

Y con esto más o menos ya puedes empezar a funcionar. Guardas los cambios y si no has tenido errores, los cambios son tomados en cuenta inmediatamente. Por aquí te dejo mi archivo de configuración inicial:

################
### MONITORS ###
################

monitor=,preferred,auto,auto

###################
### MY PROGRAMS ###
###################

$terminal = konsole
$fileManager = dolphin
$menu = wofi --show drun --insensitive

#################
### AUTOSTART ###
#################

exec-once = nm-applet
exec-once = waybar
exec-once = hyprpaper

#############################
### ENVIRONMENT VARIABLES ###
#############################

env = XCURSOR_THEME,Adwaita
env = XCURSOR_SIZE,16
env = HYPRCURSOR_THEME,Adwaita
env = HYPRCURSOR_SIZE,16

#####################
### LOOK AND FEEL ###
#####################

general {
    gaps_in = 3
    gaps_out = 10
    border_size = 1

    col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
    col.inactive_border = rgba(595959aa)

    resize_on_border = true
    allow_tearing = false

    layout = dwindle
}

decoration {
    rounding = 5
    rounding_power = 2

    active_opacity = 1.0
    inactive_opacity = 0.95

    shadow {
        enabled = true
        range = 4
        render_power = 3
        color = rgba(1a1a1aee)
    }

    blur {
        enabled = true
        size = 3
        passes = 1
        vibrancy = 0.1696
    }
}

#################
### ANIMATIONS ##
#################

animations {
    enabled = yes

    bezier = easeOutQuint,   0.23, 1,    0.32, 1
    bezier = easeInOutCubic, 0.65, 0.05, 0.36, 1
    bezier = linear,         0,    0,    1,    1
    bezier = almostLinear,   0.5,  0.5,  0.75, 1
    bezier = quick,          0.15, 0,    0.1,  1

    animation = global,        1,     6,    default
    animation = border,        1,     5,    easeOutQuint
    animation = windows,       1,     4,    easeOutQuint
    animation = fade,          1,     2,    quick
    animation = workspaces,    1,     2,    almostLinear
}

#################
### LAYOUTS #####
#################

dwindle {
    pseudotile = true
    preserve_split = true
}

master {
    new_status = master
}

misc {
    force_default_wallpaper = -1
    disable_hyprland_logo = false
}

#############
### INPUT ###
#############

input {
    kb_layout = es
    follow_mouse = 2
    sensitivity = 0

    touchpad {
        natural_scroll = false
        tap-to-click = true
    }
}

gesture = 3, horizontal, workspace

device {
    name = epic-mouse-v1
    sensitivity = -0.5
}

###################
### KEYBINDINGS ###
###################

$mainMod = SUPER

bind = $mainMod, Q, exec, $terminal
bind = $mainMod, C, killactive
bind = $mainMod, M, exec, command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch exit
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, V, togglefloating
bind = $mainMod, R, exec, $menu
bind = $mainMod, SPACE, exec, $menu
bind = $mainMod, P, pseudo
bind = $mainMod, J, togglesplit

# Focus
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Workspaces
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10


# Scratchpad
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic

# Scroll workspaces
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Mouse move/resize
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

# Volume / brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-

# Media
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous

##############################
### WINDOW RULES #############
##############################

windowrule {
    name = suppress-maximize-events
    match:class = .*
    suppress_event = maximize
}

windowrule {
    name = fix-xwayland-drags
    match:class = ^$
    match:title = ^$
    match:xwayland = true
    match:float = true
    match:fullscreen = false
    match:pin = false
    no_focus = true
}

windowrule {
    name = move-hyprland-run
    match:class = hyprland-run
    move = 20 monitor_h-120
    float = yes
}

Y con esto ya puedes empezar a dar los primeros pasos en Hyprland como los he empezado a dar yo. Si veo que el artículo tiene aceptación, escribiré otro sobre cómo he modificado la configuración de la barra waybar, para mostrarla como se ve en la captura que abre el artículo.

La configuración en estos sistemas se puede volver en algo infinito y que consume nuestro tiempo, puliendo este detalle, dándole ese toque, etc. Puede ser un buen pasatiempo para aprender o puede convertirse en un sumidero de tiempo.

Te aconsejo que te lo tomes con calma y vayas aprendiendo poco a poco sobre Hyprland. Ahora en openSUSE nos han hecho sencillo dar nuestros primeros pasos en Hyprland.

se ve la ilustración de un pingüino con los ojos medio cerrados, encima de una tabla de surf y en su barriga el texto: Linux Inside

victorhck

Captura de pantalla de Hyprland en openSUSE. çse ven dos terminales mostrando información del sistema

se ve la ilustración de un pingüino con los ojos medio cerrados, encima de una tabla de surf y en su barriga el texto: Linux Inside

✇Radios Libres

Manual Big Blue Button

Por: Radios Libres


Big Blue Button es una plataforma de videoconferencias diseñada para talleres, capacitaciones y clases en línea. Es software libre. Y puede ser instalado en un servidor propio, aumentando los niveles de seguridad, privacidad y autonomía.

Diversas organizaciones tienen “instancias” (servidores web donde está instalado BBB) que se pueden usar para videoconferencias.

La web del propio software ofrece una demo por si la quieres probar.

A continuación tienes un breve manual de uso, aunque la interfaz es muy similar al resto de plataformas de videoconferencias. Al inicio están las instrucciones para la computadora y al final las del celular.

Cualquier duda nos puedes escribir a contacto@radioslibres.net


Al entrar con el enlace de acceso debes ingresar tu nombre o nickname y aceptar los términos de referencia.

El sistema pregunta luego si quieres unirte con micrófono (podrás activarlo para hablar) o solamente como oyente.

Si te unes con micrófono, tendrás que permitir al navegador que acceda al micrófono. Dependiendo de si usar Firefox, Chrome y otro, la petición que aparece es distinta, pero debes seleccionar “Permitir” (1) y posteriormente “Unirse al audio” (2):

El sistema avisa que se está conectando.

Al entrar, en la parte interior (1) activas y desactivas cámara y micrófono. En la esquina inferior derecha (2) levantas la mano y reacciones. En la superior derecha (3) hay opciones para configurar o salir de la sala. Y en la esquina superior izquierda (4) se abre la lista de usuarias y usuarios y el acceso al chat.

Quien modera la sala puede activar las notas compartidas para anotar colectivamente. Y con el botón derecho sobre un usuario cualquiera, se le puede enviar un mensaje privado. Abajo está la caja para enviar mensajes.

En el teléfono celular, en la esquina superior izquierda, hay un icono que nos permite abrir el chat público. Y en la parte inferior están los mismos controles descritos para la computadora con los que activar y desactivar la cámara y el micrófono.


✇Radios Libres

Video y materiales del taller virtual: pon tu radio en línea

Por: Radios Libres

Formación para aprender a transmitir audio por streaming.

Comenzamos el taller describiendo brevemente el funcionamiento de Internet y las diferencias entre los servidores para alojar contenido (como una página web) y los que necesitamos para transmitir por streaming. En este gráfico están resumidos los conceptos principales:

A continuación, resumimos en tres pasos lo requerimientos para operar una radio en línea: (1) instalar un software de transmisión como Butt (hay versiones para cualquier sistema operativo de escritorio) CoolMic (Android); (2) abrir una cuenta en un servicio de streaming; (3) ofrecer un link o un reproductor para que la audiencia escuche la transmisión.

Aquí está el video completo de la sesión. Recuerda que tienes todos estos pasos descritos en detalle en este artículo. Además, en nuestra web tienes una sección completa que agrupa todos los artículos sobre el tema donde comparamos software y servidores de streaming, o enseñamos el paso a paso de cómo colocar un reproductor HTML para la web que muestre las canciones que están sonando. ¡Visítala!

Ver el video en el Fediverso

Enlace

Sólo tienes que entrar a este enlace el día y hora indicados, con cualquier navegador web (Firefox, Chromium, Chrome, etc.), tanto desde la computadora como desde el celular.

https://meet.jit.si/TallerRadioEnLineaRadiosLibres

Horario

  • 08:00 Centroamérica y México.
  • 09:00 Colombia, Ecuador, Panamá y Perú.
  • 10:00 Bolivia, Chile, Cuba, República Dominicana y Venezuela.
  • 11:00 Argentina, Brasil, Paraguay y Uruguay.
  • 16:00 Europa.

Requisitos previos

✇Radios Libres

Reproductor con estilo e imagen para una radio en línea

Por: Radios Libres

En la nueva pantalla pegamos el código del reproductor. Algunos proveedores de servicios te ofrecen sus propios reproductores. Si no lo tienes, de los que hemos probado (y han sido varios) los que mejor funcionan son los más sencillos HTML5. Además, funcionan en teléfonos celulares. Siempre y cuando el protocolo de tu streaming sea seguro sea seguro, es decir, comience con https://

[Recomendamos que una vez pegado el código sustituyas a mano todas las comillas (“)]

En source colocas la URL de tu streaming (la misma que usas para enviar la señal al servidor) y el type de transmisión. Si es mp3 escribes type=”audio/mpeg” si es ogg será type=”audio/ogg”. Si quieres que la radio comience a escucharse al abrise la página web deberás indicarlo con la palabra autoplay. Si lo borras tendrán que pulsar play para comenzar a escuchar.

<audio autoplay controls="controls"> <source src="https://radios.yanapak.org/radio_trama" type="audio/ogg" /> </audio> 

Si estás usando un servidor Shoutcast, tendrás que añadir un punto y coma (;) al final de la barra invertida de la URL, tal como se indica a continuación. Si tuviera “punto de montaje” como /stream o /live no hará falta el punto y coma.

<audio autoplay controls="controls"> <source src="https://185.85.29.166:8000/;" type="audio/mpeg" /> </audio> 

Si tienes nociones de CSS o diseño puedes jugar mucho más con la etiqueta de video. Meter una imagen de fondo, un marco de color. Por ejemplo, con este código quedaría algo así:

<style type="text/css">
#reproductor
{
position:absolute;
top: 50px;
left:0px;
display:block;
border: 1px solid #B40000;
background-color: #F1F1F1;
}
</style>
</br>
Síguenos en las Redes Sociales: Twitter:
<a href="https://twitter.com/RadiosLibres" target="_blank">@RadiosLibres</a>
</br>
<video id="reproductor" controls autoplay preload width="640" height="360" poster="http://radioslibres.net/wp-content/uploads/media/theme/images/RadiosLibres-Cabezal.png">
<source src="https://stream.codigosur.org:8000/kasandrxs.mp3" type="audio/mpeg">
</video>

Así se vería el reproductor:

alt_text

Tendrías que cambiar en la etiqueta video la URL del lugar donde este tu fotos, sino te saldrá el logo de radios libres:

poster="http://URL-de-tu-foto.png"
✇Radios Libres

Reproductor para radio en línea con el título de la canción

Por: Radios Libres

Desde que publicamos el tutorial sobre cómo instalar una radio en línea con un reproductor propio en HTML5, recibimos varias solicitudes sobre cómo incluir en el reproductor el título de la canción que está sonando en la radio. ¡Aquí tienes una posible solución para implementar aún sin saber mucho de programación web!

1. Pasos previos y requisitos

Es importante aclarar que, para que este título aparezca, cada tema debe tener la metadata correspondiente (metatags ID3). Son esas meta-etiquetas internas que tiene el archivo de audio (que no se escuchan) que indican al reproductor el título de la canción, artista que la interpreta, género, etc.

Los editores de audio como Audacity, al guardar el archivo, ofrecen la posibilidad de completarlas. Para editarlas puedes usar KID3, una aplicación -que viene instalada por defecto en Etertics GNU/Linux– que nos permite hacerlo fácilmente y en bloque para los archivos generales, tal como explica Pablo López en este titurial. Hay otras alternativas como EasyTag o MusicBrainz Picard.

El reproductor sirve en estos casos:

  • Un streaming que tenga instalado en el servidor Icecast, no para los que usan Shoutcast.
  • Un radio en línea que tenga un servidor propio, no para servicios gratuitos como Zeno, Listen2MyRadio o similares.
  • Es necesario que el servidor funcione bajo protocolo seguro https, suele fallar en los que no tienen la “s” (http).
  • Debe tener accesibles los datos a través de un archivo json (la mayoría tiene activada esta opción, de lo contrario habla con el adminsitrador).
  • El script está programado en javascript. Debes asegurarte de que tu sitio web permite este tipo de lenguaje.
  • Tienes que contar con persmisos de administración de tu página web y algunos conocimientos sobre HTML como, por ejemplo, saber colocar bloques HTML en tu CMS (WordPress, Drupal, o el que uses).

2. Comprobaciones

1.1. Ubica la dirección del streaming de tu radio

La dirección del streaming es la URL de transmisión. Si ya tienes un reproductor, es la dirección https configurada para el streaming. Esta dirección varía mucho en función de cómo esté configurado el servidor de streaming. Para confirmar que es correcta pega esa URL en un navegador y comprueba que se escucha la transmisión.

Por ejemplo: https://radios.liberaturadio.org/luisbeltran

O este otro: https://giss.tv:667/LaGaboneta.mp3 (La diferencia entre un reproductor y otro es el navegador. El de arriba es el nativo de Chrome y este de aquí abajo es el de Firefox).

1.2. Verifica que la página de datos del servidor está activa

Se conoce como server_status y, en principio, debería funcionar en todos los servidores Icecast. Sólo necesitas sustituir en la dirección anterior el punto de montaje de tu radio por status-json.xsl y pegarlo en el navegador.

En nuestro primer ejemplo sería: https://radios.liberaturadio.org/status-json.xsl

Y en el segundo: https://giss.tv:667/status-json.xsl

Esto mostrará todos los puntos de montaje disponibles en esa instancia, es decir, todas las radios en línea (streamings) existentes en el servidor. Si ves algo parecido a la imagen de aquí abajo significa que el archivo está disponible y puedes continuar (en Chrome se verá similar pero sin colores).

3. Código

Ahora sólo tienes que pegar el código javascrip de aquí abajo en tu página web para visualizar el reproductor. Si es WordPress utiliza un “bloque HTML”.

En este ejemplo estamos colocando un reproductor sencillo. Si quieres algo más elaborado en el que cambiar colores o incluir el logo de la emisora, consulta este manual.

Cargando información…

Código a copiar. En la línea const streamUrl = 'https://radios.liberaturadio.org/luisbeltran'; tendrás que remplazar la URL https://radios.liberaturadio.org/luisbeltran con tu dirección de streaming. Recuerda no borrar las comillas ni el punto y coma.

    <!-- Este es el reproductor de audio genérico que toma la URL del streaming por javascript -->

   <audio id="audioPlayer" controls>
        <source id="audioSource" type="audio/mpeg">
        Tu navegador no soporta el elemento de audio.
    </audio>
   
    <!-- Aquí se mostrará la canción que está sonando -->
    <div id="currentSong">Cargando información...</div>

    
   <script type="text/javascript">

            // Coloca aquí la URL de tu streaming, comprueba si pegas esa URL en un navegador la transmisión se escucha. No borres las comillas o el punto y coma final.
            const streamUrl = 'https://radios.liberaturadio.org/luisbeltran';


            async function fetchStreamInfo(streamUrl) {
                const url = new URL(streamUrl); // Extrae de la URL del streaming las disntitas partes
                const streamMount = url.pathname.split('/').pop(); // Obtener el punto de montaje
                const statusUrl = `${url.protocol}//${url.host}/status-json.xsl`; // Construye la URL del status-json

                try {
                        const response = await fetch(statusUrl);
                        if (!response.ok) throw new Error('Error en la red');

                        let data;

                        // Comprueba que el JSON existe
                        try {
                                data = await response.json(); // Para servidores con múltiples streams
                        } catch {
                                const text = await response.text(); // Para servidores con un único stream
                                data = JSON.parse(text);
                        }

                        // Verifica la estructura de datos
                        let stream;
                        if (data.icestats && Array.isArray(data.icestats.source)) {
                                // Para múltiples streams busca el correcto identificando el punto de montaje en el campo "listenurl"
                                stream = data.icestats.source.find(s => s.listenurl.includes(streamMount));
                        } else if (data.icestats.source) {
                                // Para servidores con un único stream la estructura json es diferente
                                stream = data.icestats.source;
                        } else {
                                throw new Error('Estructura de datos inesperada: ' + JSON.stringify(data));
                        }

                        // Mostramos la información del stream
                        const title = stream.title || 'Sin título';
                       
                        // El texto previo al título de la canción se puede modificar o eliminar, por defecto "Sonando:"
                        document.getElementById('currentSong').innerText = 'Sonando: ' + title;

                } catch (error) {
                        console.error('Error al obtener la información del stream:', error);
                        document.getElementById('currentSong').innerText = 'Error al cargar la información: ' + error.message;
                }
            }

            function setUpPlayer(streamUrl) {
                    document.getElementById('audioSource').src = streamUrl;
                    document.getElementById('audioPlayer').load();
                    fetchStreamInfo(streamUrl); // Llama a la función con la URL del stream
            }

            // Configuramos finalmente el reproductor
            setUpPlayer(streamUrl);
    
    </script>

4. Otros tutoriales

Quizás te pueden interesar estos artículos sobre radio en línea donde puedes aprender cómo instalar una radio en línea en 5 minutos o adaptar el reproductos con tu propia imagen.

✇Radios Libres

Recursos y plataformas libres para comunicarnos y trabajar a la distancia

Por: Radios Libres

Un listado de servicios libres (también gratuitos, aunque aceptan donaciones para mantenerlos activos) para que los medios comunitarios y organizaciones sociales usen alternativas abiertas y éticas, seguras y respetuosas de la privacidad, autónomas e independientes.

Un paso más en el camino hacia la soberanía tecnológica que exige el esfuerzo de todas las personas que integran estas organizaciones, poniendo recursos humanos y económicos para mantener la infraestructura y los servicios. Un esfuerzo para que las organizaciones lo usen en sus luchas pero sin olvidar a quienes están detrás de esas plataformas.

Entre [corchetes] están los idiomas de las plataformas. Clic en el ícono verde para acceder al servicio directamente.

OTROS SERVICIOS

✇El Listo

Llistes de videotutorials de COMPETIC, ACTIC i altres

Por: Listo Entertainment

He estat posant ordre al canal de videotutorials de COMPETIC / ACTIC i ja tinc casi tots els vídeos endreçats en llistes. Sé que no és el que se sol venir a buscar en el blog d’un webcòmic, però, mira, ja que hi he dedicat una estona us ho enllaço i potser us resulti útil o potser coneixeu algú a qui li pugui resultar útil. Està parit com a material didàtic per a un context d’escola d’adults però qualsevol interessat en millorar les seves habilitats TIC pot ser que li tregui una mica de suc a algun videotutorial. Alguns fan riure una mica però no sempre intencionadament. Comentaris, correccions i suggeriments són molt benvinguts.

Introduccions, presentacions i recursos:

ACTIC / COMPETIC Competències 1-3:

ACTIC / COMPETIC C4: Edició de text

ACTIC / COMPETIC C5: Edició d’imatge, so i vídeo

ACTIC / COMPETIC C6: Fulls de càlcul

ACTIC / COMPETIC C7: Bases de dades

ACTIC / COMPETIC C8: Presentacions de diapositives

Resolucions guiades de Projectes de COMPETIC de cursos anteriors:

GES, ESO i altres:

Com se sol dir, si us agrada algun vídeo, compartiu-lo, subscriviu-vos al canal, feu-li like o pengeu-lo al vostre Moodle o Classroom!

  • No hay más artículos
❌