SDL 2.0.22 llega con mejoras para Wayland y nuevas funciones

SDL_Logo

Se dio a conocer el lanzamiento de la nueva versión de SDL 2.0.22, versión en la cual se han realizado diversas mejoras de compatibilidad con Wayland, asi como tambien se ha introducido diversas mejoras y más.

Para quienes desconocen de la biblioteca SDL, deben saber que esta, proporciona herramientas como salida de gráficos 2D y 3D acelerada por hardware, procesamiento de entrada, reproducción de audio, salida 3D a través de OpenGL/OpenGL ES y muchas otras operaciones relacionadas.

SDL es análogo a DirectX, a lo cuál se podría argumentar que el análogo de DirectX es OpenGL. DirectX, también funciona con dispositivos de entrada y con sonido. Cuando Loki Software comenzó a hacer ports de juegos AAA en Linux, reemplazó Direct3D con OpenGL y no hubo reemplazo para todo lo demás y dado que actualmente es difícil escribir aplicaciones en «X» incluso con WinAPI en la API X11, pero con DirectDraw en WinAPI lo cual ya es un problema, es el cómo nació SDL.

Principales novedades de SDL 2.0.22

En esta nueva versión que se presenta, se destacan las mejoras de compatibilidad con el protocolo Wayland, pues inicialmente, se planeó cambiar a usar el protocolo Wayland de forma predeterminada en entornos que brindan soporte simultáneo para Wayland y X11, pero debido a problemas relacionados con Wayland en juegos y controladores NVIDIA, se decidió posponer la transición (en entornos Wayland con el componente XWayland, la salida todavía se usa usando el protocolo X11).

Para usar Wayland, se debe establecer la variable de entorno «SDL_VIDEODRIVER=wayland» antes de iniciar la aplicación, o agregar la función ‘SDL_SetHint(SDL_HINT_VIDEODRIVER, «wayland,x11»)’ al código antes de llamar a SDL_Init(). La compilación con Wayland requiere al menos libwayland-client 1.18.0.

Otro de los cambios que se destaca es que se agregó un conjunto de funciones para manipular áreas rectangulares (determinar la ocurrencia de puntos, borrar, comparar, fusionar, etc.), operando con coordenadas y tamaños basados ​​en números de punto flotante.

Para Linux, se agregó el indicador SDL_HINT_X11_WINDOW_TYPE para establecer el parámetro _NET_WM_WINDOW_TYPE en Windows, ademas de que tambien se agregó el indicador SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR para que Linux use libdecor con servidores compuestos que admitan xdg-decoration.

Para Android, la función SDL_AndroidSendMessage() se implementa para enviar un comando arbitrario al controlador Java SDL.

De los demás cambios que se destacan:

  • Se agregó el indicador SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE para habilitar la entrega del evento SDL_QUIT cuando se cierra la última ventana de la aplicación.
  • Se agregó el rasgo SDL_HINT_JOYSTICK_ROG_CHAKRAM para manejar el mouse ROG Chakram como un joystick.
    Se agregó la función SDL_RenderGetWindow() para obtener la ventana asociada con SDL Renderer.
  • Se agregó la función SDL_IsTextInputShown() para verificar si se muestra el área de entrada de texto.
  • Se agregó la función SDL_ClearComposition() para borrar el área de entrada de texto sin deshabilitar el método de entrada (IME).
  • Se agregó el evento SDL_TEXTEDITING_EXT para manejar áreas de entrada de texto largas y el indicador SDL_HINT_IME_SUPPORT_EXTENDED_TEXT para habilitar este evento.
  • Se agregó el indicador SDL_HINT_MOUSE_RELATIVE_MODE_CENTER para habilitar la restricción del mouse solo al centro de la ventana en lugar de a toda la ventana cuando el modo relativo está habilitado.
  • Captura automática habilitada del mouse al hacer clic en los botones del mouse. El atributo SDL_HINT_MOUSE_AUTO_CAPTURE se propone para deshabilitar.

Finalmente si estás interesado en poder conocer más al respecto de esta nueva versión, puedes consultar los detalles en el siguiente enlace.

¿Como instalar Simple DirectMedia Layer en Linux?

La instalación de esta biblioteca en Linux es bastante sencilla puesto que la mayoría de las distribuciones de Linux cuentan con ella dentro de sus repositorios.

Para el caso de Debian, Ubuntu y distribuciones derivadas de estos, solo tendrán que ejecutar los siguientes comandos en una terminal:

sudo apt-get install libsdl2-2.0
sudo apt-get install libsdl2-dev

Mientras que para el caso de los que son usuarios de Arch Linux solo tenemos que ejecutar lo siguiente:

sudo pacman -S sdl2

Para el caso de los que son usuarios de Fedora, Centos, RHEL o cualquier distribución basada en estas, solo tienen que ejecutar el siguiente comando:

sudo yum install SDL2
sudo yum install SDL2-devel

Para el resto de las distribuciones de Linux, pueden realizar la búsqueda del paquete “sdl” o “libsdl” para su instalación o realizar la descarga y compilación del código fuente.

Esto lo hacen con:

git clone https://hg.libsdl.org/SDL SDL
cd SDL
mkdir build
cd build
./configure
make
sudo make install

from Linux Adictos https://ift.tt/W9Esn0H
via IFTTT

Redis 7.0 llega con mejoras de rendimiento, corrección de errores y mas

La nueva versión del DBMS Redis 7.0 ya fue liberada, Redis proporciona funciones para almacenar datos en formato clave/valor, ampliadas con soporte para formatos de datos estructurados como listas, hashes y conjuntos, así como la capacidad de ejecutar controladores de secuencias de comandos Lua del lado del servidor.

A diferencia de los sistemas de almacenamiento en memoria como Memcached, Redis proporciona almacenamiento persistente de datos en disco y garantiza la seguridad de la base de datos en caso de un cierre anormal. Los textos fuente del proyecto se distribuyen bajo la licencia BSD.

Las bibliotecas de clientes están disponibles para los lenguajes más populares, incluidos Perl, Python, PHP, Java, Ruby y Tcl. Redis admite transacciones que le permiten ejecutar un grupo de comandos en un solo paso, lo que garantiza coherencia y consistencia (los comandos de otras solicitudes no pueden bloquear) la ejecución de un conjunto determinado de comandos y, en caso de problemas, le permite revertir los cambios. Todos los datos se almacenan completamente en caché en la RAM.

Principales novedades de Redis 7.0

En esta nueva versión que se presenta del DBMS se añadió el soporte para funciones del lado del servidor, pues diferencia de los scripts de Lua admitidos anteriormente, las funciones no son específicas de la aplicación y están destinadas a implementar una lógica adicional que amplíe las capacidades del servidor.

Las funciones se procesan de manera indisoluble con los datos y en relación con la base de datos, y no con la aplicación, incluida la replicación y el almacenamiento persistente.

Otra de las novedades que se destaca de Redis 7.0 es la segunda edición de la ACL, que permite controlar el acceso a los datos en función de las claves y permite definir diferentes conjuntos de reglas de acceso para comandos con la capacidad de vincular varios selectores (conjuntos de permisos) a cada usuario. Cada clave se puede identificar con ciertos permisos, por ejemplo, puede restringir el acceso para solo leer o escribir en un determinado subconjunto de claves.

Ademas de ello, se destaca que Redis 7.0 proporciona una implementación fragmentada del paradigma de distribución de mensajes Publish-Subscribe, que se ejecuta en un clúster, en el que se envía un mensaje a un nodo específico al que está vinculado el canal de mensajes, después de lo cual este mensaje se redirige a los nodos restantes incluidos en el casco. Los clientes pueden recibir mensajes suscribiéndose a un canal, tanto conectándose al nodo primario como a los nodos secundarios de la sección.

Tambien se destaca que se proporcionó la capacidad de manejar múltiples configuraciones a la vez en una sola llamada CONFIG SET/GET y que se agregaron las opciones «–json», «-2», «–scan», «–functions-rdb» a la utilidad redis-cli.

De forma predeterminada, el acceso a las configuraciones y comandos que afectan la seguridad está deshabilitado para los clientes (por ejemplo, los comandos DEBUG y MODULE están deshabilitados, está prohibido cambiar configuraciones con el indicador PROTECTED_CONFIG). Redis-cli dejó de enviar comandos que contenían datos confidenciales al archivo de historial.

Por otra parte, se destaca que se realizó una gran parte de las optimizaciones destinadas a mejorar el rendimiento y reducir el consumo de memoria. Por ejemplo, el consumo de memoria se ha reducido significativamente cuando el modo de clúster está habilitado, cuando se realizan operaciones de copia en escritura y cuando se trabaja con claves hash y zset, ademas de que la lógica fue mejorada para vaciar datos al disco (llamada fsync).

Se ha solucionado la vulnerabilidad CVE-2022-24735 en el entorno de ejecución de scripts Lua, que permite sustituir el código Lua propio y provocar que se ejecute en el contexto de otro usuario, incluidos aquellos con mayores privilegios.

Además, podemos señalar una vulnerabilidad (CVE-2022-0543) en paquetes con Redis para Ubuntu y Debian (el problema es específico de ensamblados individuales y no está relacionado con Redis en sí), que permite ejecutar código Lua arbitrario en un servidor remoto y omitiendo el mecanismo de aislamiento del espacio aislado del entorno para ejecutar scripts en Redis.

Se solucionó la vulnerabilidad CVE-2022-24736 que podría permitir que el proceso del servidor redis se bloquee debido a una falta de referencia de puntero nulo. El ataque se lleva a cabo cargando scripts Lua especialmente diseñados.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/bUAXKxa
via IFTTT

KDE Plasma Mobile 22.04 ya fue liberado y estas son sus novedades

Se dio a conocer el lanzamiento de la nueva versión de la plataforma móvil KDE Plasma Mobile 22.04 basada en la edición móvil del escritorio Plasma 5, las bibliotecas KDE Frameworks 5, la pila telefónica ModemManager y el marco de comunicación Telepathy.

Plasma Mobile utiliza el servidor compuesto kwin_wayland para mostrar gráficos y PulseAudio para el procesamiento de sonido. Simultáneamente, se ha preparado el lanzamiento del conjunto de aplicaciones móviles Plasma Mobile Gear 22.04, que está formado por analogía con el conjunto KDE Gear.

Principales novedades de KDE Plasma Mobile 22.04

Esta nueva versión que se presenta del shell móvil KDE Plasma Mobile 22.04 traslada los cambios desarrollados en la rama KDE Plasma 5.25, que se espera que se lance el 14 de junio.

De los cambios más notables que podremos encontrar en esta nueva versión de KDE Plasma Mobile 22.04 es por ejemplo en la interfaz para cambiar entre aplicaciones en ejecución (Task Switcher), se ha mejorado la animación al activar y minimizar aplicaciones, ademas de que se agregó la capacidad de ordenar las aplicaciones en ejecución en el orden en que se abrieron, no solo en orden alfabético.

Otro de los cambios que se destaca es la adaptación mejorada al ancho de pantalla en la barra de tareas, pues la barra de navegación está configurada para desactivar la transparencia cuando se abre el teclado en pantalla, pero no otras ventanas de shell.

Ademas de ello, se agregó la capacidad de llamar a una versión truncada del panel de configuración rápida desplegable (Cajón de acciones) cuando la pantalla está bloqueada, el cierre previsto del panel al tocar la zona exterior vacía, ademas de que se proporcionó soporte para reorganizar la configuración de shell. Animación mejorada al hacer clic en los botones de configuración rápida.

Tambien se destaca que se agregó la capacidad de cambiar entre las implementaciones de la pantalla de inicio, aunque no se han agregado nuevos tipos de pantalla de inicio, pero KDE Store proporcionará opciones de pantalla de inicio alternativas para KDE Plasma Mobile.

En la pantalla de inicio básica, se ha agregado una animación para aumentar y disminuir los íconos de las aplicaciones cuando el usuario interactúa con ellos. El texto del título de la aplicación ahora está en negrita para una mejor legibilidad.

El reproductor multimedia admite secuencias paralelas (varias aplicaciones pueden emitir sonido al mismo tiempo), el diseño del módulo para configurar los parámetros de las redes celulares se ha actualizado en el configurador.

En la a interfaz para realizar llamadas (Plasma Dialer) se cambió para usar el proceso en segundo plano callaudiod desarrollado por el proyecto Mobian, lo que permitió deshacerse de los propios controladores (desarrollados por KDE) de sonido y garantizar el uso de código común para diferentes dispositivos y distribuciones.

Por otra parte, se destaca que se agregó soporte para la ejecución en segundo plano de los portales Flatpak al widget de reloj, lo que permite iniciar automáticamente el proceso kclockd en modo de aislamiento de espacio aislado y que en Tokodon, un cliente para la plataforma descentralizada de microblogging Mastodon, se proporciona la salida de toda la información de perfil de usuario disponible.

De los demás cambios que se destacan de esta nueva versión:

  • Se agregó soporte para bloquear, silenciar y seguir a otros usuarios.
  • Se ha rediseñado la interfaz de selección de cuenta y la barra lateral.
  • Interfaz mejorada de Spacebar, un programa para enviar SMS/MMS.
  • Se han rediseñado la barra superior, la navegación de aplicaciones y la interfaz de administración de archivos adjuntos.
  • Se agregaron configuraciones de notificación para ocultar el remitente y el contenido del mensaje al mostrar notificaciones durante el bloqueo de pantalla.
  • Se agregó la capacidad de seleccionar un número de teléfono activo para las entradas en la libreta de direcciones que tienen varios números asociados.
  • Se agregó soporte para seguir enlaces al ver mensajes.
  • Página mejorada para configurar APN.
  • Trabajo mejorado del programador de calendario Kalendar.
  • Se continuó trabajando en el cliente para el sistema de comunicación Nextcloud Talk, que implementa la mayoría de la API de las salas de chat.

Finalmente, si estás interesado en poder conocer más al respecto puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/B9Ih8xg
via IFTTT

SteamOS 3.2 beta mejora el control del ventilador y la frecuencia de refresco, esto en experimental

SteamOS 3.2

A principios de marzo, Valve lanzó la v3.0 de su sistema operativo. Entre las novedades más destacadas teníamos que, además de medio-resurgir de sus cenizas, pasó a basarse en Arch Linux. Resurgió de sus cenizas porque el desarrollo estaba bastante parado, hasta que decidieron lanzar su propia consola y tuvieron que hacer cambios importantes. Desde hoy está disponible SteamOS 3.2 beta, una versión de prueba que introducirá novedades interesantes para un sistema operativo diseñado principalmente para el gaming.

Entre esas novedades destacarían dos: una sería el control del ventilador, algo que creo que es muy necesario, ya que habrá títulos exigentes que harán que la consola se caliente más de lo esperado; la segunda es un ratio de refresco experimental. La lista de novedades la han publicado en la web de steamcommunity, y es lo que tenéis a continuación.

Novedades más destacadas de SteamOS 3.2

  • Se ha añadido una curva de ventilador controlada por el sistema operativo para mejorar la experiencia en escenarios de bajo uso y ajustar la respuesta del ventilador a diferentes escenarios y temperaturas.
  • Corregido un problema por el que el control del ventilador por parte del sistema operativo no se reanudaba automáticamente después de despertar el dispositivo de la suspensión.
  • Se ha añadido soporte experimental para cambiar la frecuencia de actualización de la pantalla en el juego. La tasa de refresco se ajustará automáticamente a la opción deseada al entrar y salir del juego.
    • Hay un nuevo deslizador en el menú de acceso rápido > pestaña de rendimiento que permite elegir una tasa de refresco de pantalla entre 40-60Hz.
    • Los valores del deslizador de límite de velocidad de fotogramas se actualizarán en consecuencia, e incluirán las opciones de velocidad de fotogramas 1:1, 1:2, 1:4 o sin límite.
  • Se ha corregido un problema al escribir la tecla € con el teclado de Steam.
  • Se ha añadido soporte experimental para que el teclado de Steam aparezca automáticamente en algunos casos en el modo Escritorio

Los usuarios interesados en participar en el programa beta y quieran instalar SteamOS 3.2 beta pueden hacerlo desde la Steam Deck yendo a Ajustes/Sistema y eligiendo Beta en el canal de actualizaciones.

from Linux Adictos https://ift.tt/6SEqkMu
via IFTTT

Archinstall 2.2.1 estrena nuevo menú del sistema para facilitar aún más las cosas

Archinstall en Arch Linux

Hace mucho tiempo se hacían bromas, o más bien había usuarios de Arch Linux que sacaban pecho porque usaban un sistema operativo que era más difícil de instalar que otros con instalador gráfico como Ubuntu o Fedora. Y bueno, este tipo de bromas pueden seguir haciéndose, pero desde que existe Archinstall las cosas son un poco más sencillas. Un poco. Lo mejor es que la herramienta añade nuevas facilidades con cada nueva versión.

Desde hace menos de un día que está disponible Archinstall 2.2.1, cuya información detallada se puede leer en este enlace. Hace menos de un año que lanzaron la v2.2.0 de este instalador guiado de Arch Linux, y entre sus novedades había diferentes perfiles e incluso nos permitía elegir el kernel a instalar. Con Archinstall 2.2.1, el proyecto ha querido ir un poco más allá, pero vamos a tener que seguir haciéndolo todo desde la interfaz de línea de comandos (CLI).

Archinstall 2.2.1 también trae mejoras de accesibilidad

Lo primero que destaca de la nueva versión es un nuevo menú del sistema, uno que parece más organizado. Desde él se puede elegir el idioma del sistema, el idioma del teclado, el bootloader y mucho más. Hasta ahora eso iba apareciendo en diferentes pasos, y ahora lo tenemos todo en una misma pantalla. Este menú ofrece facilidades de accesibilidad; en teoría se le puede hacer hablar con las teclas del teclado numérico.

Entre otras mejoras también tenemos:

  • Se ha añadido la opción de compresión BTRFS si se elige btrfs como sistema de archivos.
  • Ahora soporta múltiples configuraciones NIC al mismo tiempo para el manual de configuración.
  • El instalador hace un seguimiento de qué paquetes se han instalado desde archinstall.Installer().

Archinstall 2.2.1 ha sido anunciado hace apenas 20 horas, pero para poder usarlo hará falta hacer una instalación de cero con la próxima imagen ISO que esta programada para el 1 de mayo.

from Linux Adictos https://ift.tt/BGO6ieX
via IFTTT