Dona tu Raspberry Pi para colaborar con las campañas de GNU Health
El software libre es más que bits. Puede ayudar a comunidades locales a gestionar pequeños hospitales con GNU Health que mejoran la salud y el bienestar de las personas

GNU Health es un sistema cada vez más completo que sirve para gestionar distintos aspectos de un centro de salud u hospital. Gestión de enfermos, informes médicos, resultados de análisis, etc. ¡Y es software libre!
Este sistema desarrollado como software libre, puede ayudar en comunidades con pocos recursos, ya que no requiere licencias y para su ejecución no se requieren potentes equipos, si no que pueden funcionar perfectamente en una Raspberry Pi con sistemas libres como openSUSE Leap.
No requiere de grandes infraestructuras, ni conlleva grandes gastos de consumo energético, etc. Por eso son una gran solución en zonas con menos recursos o en zonas que han sufrido una emergencia como una catástrofe.
Miles de pacientes en la zona costera de Kribi, Camerún, están preparados para obtener una mejor prestación de atención médica a medida que un hospital de la ciudad se expande con el uso de soluciones de software libre eficientes desde el punto de vista energético.
El Hospital Ebomé, que se encuentra en la costa sur de África central, cuenta con servicios de emergencia las 24 horas, quirófano, radiología, maternidad, laboratorio, farmacia y otros servicios. El hospital trata a miles de personas cada año.
A medida que la instalación se expanda, utilizará el Sistema de información hospitalaria de software libre GNU Health para administrar los registros de los pacientes, la información de laboratorio y los servicios administrativos. El sistema ejecutará openSUSE Leap 15.3 en varias computadoras Raspberry Pi 4.
“La excelente y prolongada relación entre las comunidades de openSUSE y GNU Health ha dado como resultado una infraestructura sólida que ofrece tecnología de vanguardia al mismo tiempo que ofrece un rendimiento sobresaliente y protege la privacidad de los pacientes y profesionales de la salud“, dijo el científico informático, médico y defensor del software libre y creador de GNU Health, Luis Falcón. “Desde computadoras de placa única hasta servidores de nivel empresarial y teléfonos móviles. Nuestras comunidades continuarán siendo pioneras y brindarán tecnología punta en las áreas de salud pública, administración de hospitales y laboratorios, bioinformática y tecnología de salud personal como MyGNUHealth ”.
Los pacientes pueden acceder a los registros médicos personales a través de MyGNUHealth con openSUSE en PinePhone; o ejecutando Plasma Mobile de KDE, XFCE o su entorno de escritorio favorito. El hospital, que es administrado por una organización no gubernamental española llamada Ambala, utilizará la versión 4.0 de GNU Health en los dispositivos de placa única con todos los componentes de administración del hospital y del laboratorio.
La mitad de las 40 estaciones de trabajo Pi en la instalación son donadas por GNU Solidario, que es una ONG fundada por Falcón, y openSUSE.
“La donación de Raspberry Pi y otras computadoras de placa única nos ayuda mucho a lograr nuestra misión de Salud Universal”, dijo. “Enviamos GNU Health integrado en estos dispositivos a cualquier institución de salud en todo el mundo. No tienen que preocuparse por la instalación ni por los detalles técnicos, y deben concentrarse en lo más importante, el bienestar de su población y de sus pacientes “.
La instalación de 62 camas cuenta con 65 profesionales de la salud y cubre un área de población estimada de 180.000 personas.
La colaboración con el hospital se discutirá en GNU Health Con 2021 el 10 y 11 de diciembre de 2021.
Personas interesadas en apoyar el proyecto y donar equipos como una Raspberry Pi 4 pueden enviar un correo electrónico a info@gnuhealth.org o echar un vistazo a la página de donaciones de GNU Health.
Más información en el artículo original en inglés que puedes visitar en este enlace:

Hospital to run GNU Health, openSUSE
NUREMBERG, Germany, Oct. 20, 2021 - Thousands of patients in the coastal area of Kribi, Cameroon, are set to gain enhanced health-care delivery as a hospital in the city expands with the use of energy efficient open-source solutions.
The Ebomé Hospital, which is on the southern coast of central Africa, has 24-hour emergency services, an operating room, radiology, maternity, a laboratory, a pharmacy and other services. The hospital treats thousands of people every year.
As the facility expands, it will use the Hospital Information System GNU Health to manage patient records, laboratory information and administrative services. The system will be running openSUSE Leap 15.3 on several Raspberry Pi 4 computers.
“The excellent, long time relationship among openSUSE and GNU Health communities have resulted in a solid infrastructure that delivers state of the art technology all while delivering outstanding performance and protecting the privacy of the patients and health professionals,” said computer scientist, physician and Free Software advocate Luis Falcón. “From Single Board Computers to enterprise grade servers, to mobile phones. Our communities will continue pioneering and delivering state-of-the-art technology in the areas of public health, hospital and laboratory management, bioinformatics and personal health tech like MyGNUHealth.”
Patients can access personal health records through MyGNUHealth running openSUSE on the PinePhone; or running KDE’s Plasma Mobile, XFCE or their favorite desktop environment. The hospital, which is managed by a Spanish Non-Governmental Organization called Ambala, will be using GNU Health’s 4.0 version on the single board devices with all the hospital- and laboratory-management components.
Half of the 40 Pi workstations in the facility are donated by GNU Solidario, which is an NGO founded by Falcón, and openSUSE.
“The donation of Raspberry Pi and other single board computers helps us a lot to achieve our mission of Universal Health,” he said. “We ship GNU Health embedded on these devices to any health institution around the globe. They don’t have to worry about installation or any technical details, and focus on what is most important, the well-being of their population and patients.”
The 62-bed facility has 65 health professionals and covers an estimated population area of 180,000 people.
The collaboration with the hospital will be discussed at GNU Health Con 2021 from Dec. 10 - 11.
People interested in supporting the project and donating boards like a Raspberry Pi 4 can send an email to info@gnuhealth.org or view the GNU Health donations page.
Lanzada la primera actualización de Plasma 5.23
Tal y como estaba previsto en el calendario de lanzamiento de los desarrolladores, hoy martes 19 de octubre la Comunidad KDE ha comunicado que ha sido lanzada la primera actualización de Plasma 5.23. Una noticia que aunque es esperada y previsible es la demostración palpable del alto grado de implicación de la Comunidad en la mejora continua de este gran entorno de escritorio de Software Libre.
Lanzada la primera actualización de Plasma 5.23
No existe Software creado por la humanidad que no contenga errores. Es un hecho incontestable y cuya única solución son las actualizaciones. Es por ello que en el ciclo de desarrollo del software creado por la Comunidad KDE se incluye siempre las fechas de las actualizaciones.

De esta forma, el martes 19 de octubre ha sido lanzada la primera actualización de Plasma 5.23, la cual solo trae (que no es poco) soluciones a los bugs encontrados en esta semana de vida del escritorio y mejoras en las traducciones. Es por tanto, una actualización 100% recomendable.
Más información: KDE
Las novedades básicas de Plasma 5.22
Aún tengo pendiente el resumen de las novedades pero he aquí la lista preliminar de ellas.
- Nuevo fondo para el escritorio
- Nuevo tema: Brisa — Océano azul que mejora el aspecto de Plasma y aclara su cometido.
- Nuevos efectos visuales permanentes: los elementos activos de una ventana de diálogo, por ejemplo, se «iluminan» cuando la ventana obtiene el foco, las casillas de verificación muestran marcas reales y los botones de radio se encienden como bombillas.
- Las barras de desplazamiento y los controles numéricos son más grandes, haciéndolos más accesibles y fáciles de usar en las pantallas táctiles
- Nueva opción que le permite escoger los colores de acentuación del escritorio.
- Diálogo con una cuenta atrás al cambiar la resolución de pantalla.
- Nuevas opciones para Activar, desactivar o recordar el estado del Bluetooth.
- Reescrito grandes partes del código del lanzador de aplicaciones para hacerlo más rápido y fácil de usar.
- Mejoras en la bandeja del sistema.
- Mejoras en Wayland.
Más información: KDE
El comando comm de #GNU
Demos un repaso al uso del comando comm del sitema GNU

Los comandos de GNU coreutils son las herramientas básicas de nuestros sistemas GNU con kernel Linux similares a las de sistemas Unix, para gestionar desde la línea de comandos el sistema y operaciones con archivos de texto.
Vamos a repasar las opciones y uso del comando comm que sirve para comparar dos archivos ordenados, línea por línea y nos mostrará el resultado de dicha comparación.
El comando comm, sirve para comparar dos archivos que previamente ya estuvieran ordenados, importante matiz, y si lo ejecutamos sin más mostrará tres columnas separadas por tabuladores en los que podremos encontrar:
- primera columna: el texto que únicamente aparece en el primer archivo
- segunda columna: el texto que únicamente aparece en el segundo archivo
- tercera columna: el texto común que aparece en ambos archivos
Primero vamos a ordenar el contenido de los dos archivos que vamos a comparar, para ello vamos a utilizar el comando sort y guardar el contenido en los propios archivos. Tenemos dos archivos llamados archivo1.txt y archivo2.txt
Para ordenar un archivo y que lo guarde en el mismo archivo ejecutaremos:
sort -o archivo1.txt archivo1.txt
Hacemos esto con los dos archivos y podemos ver lo que hay en los archivos mediante:
head archivo1.txt archivo2.txt
==> archivo1.txt <==
aloha mundo!
linea 2
linea 3
naranja
==> archivo2.txt <==
hola mundo!
linea 2
linea 3
linea 4
naranja
Ahora ejecutemos el comando comm:
comm archivo1.txt archivo2.txt
aloha mundo!
hola mundo!
linea 2
linea 3
linea 4
naranja
Como decía antes, sin más parámetros el comando nos muestra 3 columnas. Las líneas que solo aparecen en el primer archivo, las que aparecen solo en el segundo y las que son comunes en ambas.
Podemos eliminar alguna de esas columnas con las opciones -1 o -2 o -3 que suprime la primera, la segunda o la tercera columna respectivamente.
Mostremos únicamente las líneas comunes que aparecen en ambos archivos mediante:
comm -12 archivo1.txt archivo2.txt
linea 2
linea 3
naranja
También podremos configurar el texto que separa las columnas. Por ejemplo, vamos a separar las columnas con guiones:
comm archivo1.txt archivo2.txt --output-delimiter=-------------
aloha mundo!
-------------hola mundo!
--------------------------linea 2
--------------------------linea 3
-------------linea 4
--------------------------naranja
Tiene otro par de opciones para decirle al comando que no están ordenados los archivos o para comprobar el orden, pero no son muy útiles.
El comando en sí, no es muy potente si lo comparamos con otras opciones como diff, pero el comando comm al ser más simple, nos puede ser más útil a la hora de ejecutarlo en algún script en el que lo necesitemos.
La verdad es que la información presentada es muy espartana, lo que es genial si usamos el comando en un script, pero si lo usamos como comando, quizás se le puede añadir un pequeño encabezado de la siguiente manera:
echo "archivo 1 archivo 2 ambos" && echo "---------------------------------------------" && comm archivo1.txt archivo2.txt --output-delimiter=" "
archivo 1 archivo 2 ambos
---------------------------------------------
aloha mundo!
hola mundo!
linea 2
linea 3
linea 4
naranja
También podemos añadir la opción –total para que nos muestre un recuento del contenido de elementos de cada columna en la parte inferior.
También existe la posibilidad de comparar un archivo (no pueden ser los dos) con la entrada estandar, es decir texto introducido por teclado:
comm archivo1.txt -
Ahora vamos escribiendo cadenas de texto (en forma ordenada) para que las compare con archivo 1. Y nos dirá si estaban en el archivo, si solo aparecen en lo que hemos escrito o si están en ambos archivos. Para terminar pulsamos Ctrl+D.
Estás serían las maneras de utilizar este comando estándar de POSIX escrito para GNU por Richard M. Stallman y David MacKenzie. Quizás útil a la hora de incluirlo en algún script.

OWASP SP : Quinto Meetup Virtual de 2021

Nesta terça-feira, dia 19 de outubro, a OWASP SP proporcionará o quinto Meetup com palestra de extrema relevância como sempre, sendo uma vez que o mundo vive uma crise no contexto de segurança da informação. Todo dia nos deparamos com um novos vazamentos de dados. Sendo assim, a propagação de conhecimento, proporcionará softwares e sistemas seguros minimizando esta crise.
19h00 : Tema: Automação de monitoração serverless sobre superficie de ataque
Palestrante : Ubirajara Aguiar Jr
Nesta palestra veremos uma demonstração de como estruturar a orquestração de serviços AWS com o objetivo de manter uma monitoração ativa sobre a superfície de ataque de um ambiente corporativo.
Mini-Bio: Especialista em segurança da informação com foco em segurança ofensiva, análise de segurança em aplicações, APIs, redes e nuvem. Implementação de SDLC. 10 anos de carreira em TI com passagens por áreas de infraestrutura e governança, além de segurança da informação. Pesquisador de segurança e bug hunter.

Octavo episodio de KDE Express: Komunidad con Ignacio Serantes
Nuevo podcast producido por los miembros de la asociación sin ánimo de lucro KDE España. Bienvenidos al octavo episodio de KDE Express que sigue la serie de Komunidad, en esta ocasión con Ignacio Serantes. Escuchemos lo que nos tienen que contar.
Octavo episodio de KDE Express: Komunidad con Ignacio Serantes
Comenté hace unos meses que había nacido KDE Express, un audio con noticias y la actualidad de la Comunidad KDE y del Software Libre con un formato breve (menos de 30 minutos) que complementa los que ya genera la Comunidad de KDE España de forma casi mensual con sus ya veteranos Vídeo-Podcast que podéis encontrar en Archive.org, Youtube, Ivoox, Spotify y Apple Podcast.

Seguimos pues con sus episodios cortitos y, en esta ocasión, con una nueva charla con un veterano integrante de KDE España, llegando al número 8 de su primera temporada que, en palabras del equipo de KDE Express, se introduce de la siguiente forma:
Seguimos con Komunidad KDE, cambiando esta vez a un compañero de KDE – Cañas y Bravas y socio de KDE España, Ignacio Serantes Iglesias. Como es habitual hacemos un recorrido histórico por su experiencia con Linux en general y con algunas vivencia de KDE en particular.
Algunas de las cosas mencionadas:
PD: Feliz 25 aniversario de KDE!
A mi me sigue gustando mucho, es rápido, directo al grano y muy dinámico, con lo cual es ideal para aquellos que les guste tener su pincelada de Kdeera en su podcaster. Evidentemente, no se profundiza en temas aunque si se da una visión muy personal de los mismos.
Así que sigo dando mi más sincera enhorabuena a José Picon, Brais Arias y a David Marzal por el esfuerzo y dedicación… y aprovecho para comentar que si alguien está interesado en colaborar (bien sea para iniciarse o bien sea porque cree que puede aportar alguna cosa) no tiene más que ponerse en contacto con ellos enviando un mail a esta dirección kde_express@kde-espana.org.
Por cierto, también podéis encontrarlos en Telegram: https://t.me/KDEexpress
Actualizaciones de las imágenes de #openSUSE Leap
La distribución de GNU/Linux, openSUSE, espera tener recompilaciones regulares de su versión Leap de manera trimestral o según sea necesario

La comunidad de openSUSE no para en pensar mejoras y beneficios para la propia distribución de GNU/Linux como para mejorar la experiencia del usuario que instala este sistema operativo.
En este caso se trata de una mejora en la versión del sistema operativo de lanzamientos anuales llamada Leap.
La versión Leap de openSUSE se publica de manera (más o menos) anual, donde se incorporan mejoras y actualizaciones de software no drásticas para no provocar que unas actualizaciones de varios paquetes “rompan” el sistema.
Es decir, en openSUSE Leap, no prima el tener la última versión funcional de todos los paquetes instalados, si no los más estables. No tendrás la versión más reciente del kernel Linux, si no la más estable y mantenida y como este ejemplo todo los demás.
Pero sí que se publican parches y actualizaciones de seguridad que corrigen problemas o errores de paquetes de software y está bien instalarlas para seguir disfrutando de un sistema estable y seguro.
Con el tiempo estas actualizaciones de parches, se van acumulando desde la fecha en la que se publicó la versión disponible para descargar.
Es decir, que si descargas la imagen ISO que se publicó y la instalas, después tendrás que actualizar el sistema para que incorpore esos parches y actualizaciones menores publicados.
Como openSUSE Leap comparte binarios con la distribución empresarial SUSE Linux Enterprise, también cuando esta última se recompile por necesidades de su software, openSUSE Leap tendrá que recompilarse y se ofrecerá una nuevo ISO.
Lo que implica, más tiempo y trabajo, consumo de ancho de banda, descarga de paquetes, etc.
Así que la comunidad de openSUSE ha pensado: Si después de instalar la ISO descargada hay que descargar esos paquetes ¿Por qué no hacer que la ISO descargada ya incorpore esas actualizaciones? Y eso es lo que han llamado “las Respin” de openSUSE Leap.
A esas imágenes ISO de openSUSE Leap se les agregará un sufijo a la numeración, para entender y diferenciarlas de la ISO publicada en la fecha de lanzamiento. Así para Leap 15.3 (la versión actual en el momento de escribir este artículo) las nuevas ISO’s con las modificaciones incorporadas serán Leap 15.3-X
Estas imágenes recompiladas con las nuevas actualizaciones y parches ya incluidos, serán las que se puedan descargar desde el sitio oficial de descargas:
Cada nueva imagen ISO, antes de ser publicada será comprobada con los test de openQA para comprobar que siguen manteniendo la estabilidad que openSUSE Leap ofrece.
Ya se ha establecido el procedimiento para automatizar la tarea y de manera cíclica se ofrecerán las nuevas versiones de openSUSE Leap actualizadas.
Enlaces de interés

Query NTP Server in Terminal
Solution to Missing DOMContentLoaded Event when Enabling both HTML Auto Minify and Rocket Loader in Cloudflare
Recently, I moved my domain DNS record under Cloudflare. Cloudflare can smartly optimize web pages. But when I enabled HTML Auto Minify and Rocket Loader simultaneously, I found that the DOMContentLoaded event was missing when accessing the web pages. In this post, I’ll share my experience and solutions to this problem.
Introduction to Auto Minify and Rocket Loader
Auto Minify can delete unnecessary characters (such as spaces, comments, etc.) in the website source code to reduce the source file size, including CSS, Javascript, and HTML. As a result, it reduces the amount of data that needs to be transmitted to the visitor and shortens the page loading time.
Rocket Loader reduces rendering time by asynchronously loading JavaScript, including embedded JavaScript in web pages and third-party scripts. Please refer to their blog for further details.
Finding that the DOMContentLoaded event is missing
As we all know, document.readyState is defined as three states in Chrome:
- When the value is
loading, it means that the browser is rendering the web page. - When it becomes
interactive, DOM elements on the web page can be accessed. However, resources such as images, style sheets, and frames are still being loaded. - When finally it becomes
complete, it means that all resources of the webpage have been loaded.
The DOMContentLoaded window event is triggered when the state changes from loading to interactive. The load window event is triggered when the state changes from interactive to complete.
However, after enabling HTML Auto Minify and Rocket Loader simultaneously, I found that the functions meant to be executed when the DOMContentLoaded window event was triggered were not executed actually.
First of all, I judged that it’s impossible to be caused by bugs from web pages, as the website is working normally when I test them locally, and I also used the following code to ensure that the functions are directly executed when document.readyState is interactive or complete:
if (document.readyState === "interactive" ||
document.readyState === "complete") {
foo();
} else {
window.addEventListener("DOMContentLoaded", foo);
}
So it’s puzzling.
Then I embed the following code into the web page so that starting from the time when JavaScript is executed, the console will show the value of document.readyState every time the state changes:
console.log(document.readyState);
document.onreadystatechange = function () {
console.log(document.readyState)
}
Then learned from the result that after enabling both HTML Auto Minify and Rocket Loader, document.readyState only has two states, loading and complete. The state interactive is missing, and when the state changes from loading to complete, only the load window event will be triggered. The DOMContentLoaded event has never been triggered.
It seems to be a bug to Rocket Loader or may be just intentional.
According to the principles of Rocket Loader introduced by Cloudflare, it will postpone the loading of all JavaScript until rendering is finished. When rendering completes and the JavaScript code is being executed, document.readyState should already be interactive.
However, if HTML Auto Minify is also turned on simultaneously, document.readyState is incorrectly set to loading concluded from the result fore-mentioned. (I guess maybe a piece of code in Rocket Loader incorrectly assigned document.readyState to loading when it starts to execute Javascript code. Because Rocket Loader is not open-sourced, the reasons for doing this are unknown. Of course, the fact may be completely different from my guess.) As a result, the situation makes judgment for whether to directly execute functions completely invalid, resulting in the DOMContentLoaded event still being registered.
Solution
Now that the mechanism is known to us, the solution is also straightforward. Add the following code before all DOMContentLoaded event listeners. You don’t need to change any of the original codes and then, congratulations, you fixed this.
var inCloudFlare = true;
window.addEventListener("DOMContentLoaded", function () {
inCloudFlare = false;
});
if (document.readyState === "loading") {
window.addEventListener("load", function () {
if (inCloudFlare) window.dispatchEvent(new Event("DOMContentLoaded"));
});
}
This code judges that if the DOMContentLoaded event has still not occurred after the load event occurs, the code will manually triggers the DOMContentLoaded event, thereby making the DOMContentLoaded event equivalent to the load event. The only disadvantage of this solution is that the DOMContentLoaded event is only triggered when document.readyState is complete, but this is currently a necessary cost for fixing.
Of course, you can also resolve this problem by directly disabling the global Auto Minify for HTML, or Configure Page Rules for HTML pages that use the DOMContentLoaded event so that the Auto Minify can be disabled on those pages.
5 novedades de Plasma 5.23 edición 25 aniversario
De nuevo voy justo de tiempo, justamente cuando más noticias genera la Comunidad KDE. Así que echo mano de la la instancia de PeerTube de KDE y os presento el vídeo de 5 novedades de Plasma 5.23 edición 25 aniversario creado por el prolífico Niccolò Ve.
5 novedades de Plasma 5.23 edición 25 aniversario
El pasado 14 de octubre, conmemorando los 25 años de la Comunidad KDE, fue lanzado la nueva versión del escritorio de esta Comunidad: Plasma 5.23.

Aunque sus novedades son muy variadas, y muchas centradas en Wayland, su actualización es muy recomendable y por ello Niccolò Ve ha creado un vídeo donde nos muestra sus 5 novedades más destacadas.
