Mesa 24.0 llega con mejoras de soporte, nuevas extensiones Vulkan y mas

Mesa Drivers

Mesa es una biblioteca gráfica de código abierto, desarrollada que proporciona una implementación genérica de OpenGL

Hace poco se dio a conocer el lanzamiento de la nueva versión de los controladores «Mesa 24.0» la cual es la primera versión de la rama Mesa 24.x la cual está catalogada como experimental y posterior a la estabilización de la rama se estará dando a conocer el lanzamiento de la versión estable.

Esta nueva versión de Mesa 24.0 ofrece soporte completo para la API de gráficos Vulkan 1.3 a través de diversos controladores, incluyendo anv para GPU Intel, radv para GPU AMD, NVK para GPU NVIDIA, tu para GPU Qualcomm, y en el rasterizador lvp y vn. Además, la compatibilidad con Vulkan 1.0 está implementada en los controladores v3dv (GPU Broadcom VideoCore VI de Raspberry Pi 4) y dzn (implementación de Vulkan sobre Direct3D 12).

Principales novedades de Mesa 24.0

En esta nueva versión de Mesa 24.0 se destaca la compatibilidad total con OpenGL 4.6 para una amplia gama de hardware, pues se han implementado algunas nuevas características y de las más notables se encuentra la compatibilidad con el controlador d3d12.

Asimismo, en Mesa 24.0, se brinda soporte para OpenGL 4.5 en las GPU AMD (r600) y NVIDIA (nvc0), mientras que la compatibilidad con OpenGL 3.3 está presente en los controladores softpipe (rasterizador de software), asahi (GPU AGX utilizada en los chips Apple M1 y M2) y nv50 (NVIDIA NV50).

Otro de los aspectos destacados, es la implementación de la API Vulkan 1.3 junto con la adición de un nuevo controlador «pvr» para la GPU Imagination PowerVR, asi como también que el controlador Asahi para la GPU Apple AGX incluye soporte para sombreadores de geometría y es compatible con OpenGL 3.3 y el controlador RADV Vulkan para GPU AMD ha mejorado el rendimiento del trazado de rayos.

También se destacan las nuevas extensiones de Vulkan para la aceleración por hardware de la codificación de video en formatos h.264 y h.265 y características en varios controladores, incluidos RADV y Asahi.

Se han incorporado diversas extensiones al controlador NVK Vulkan para GPU NVIDIA: VK_KHR_vulkan_memory_model, VK_EXT_multi_draw, VK_EXT_subgroup_size_control, VK_KHR_fragment_shader_barycentric, VK_KHR_synchronization2, VK_KHR_shader_float_controls, VK_KHR_shader_atomic_int64 y VK_KHR_shader_subgroup_extended_types

Por otro lado, el controlador RADV Vulkan para GPU AMD ha sido actualizado con soporte para una serie de extensiones: VK_EXT_image_compression_control, VK_EXT_device_fault, VK_EXT_depth_clamp_zero_one, VK_KHR_calibrated_timestamps, VK_KHR_vertex_attribute_divisor, VK_KHR_maintenance6 y VK_KHR_ray_tracing_position_fetch

Por la parte de las correcciones de errores, Mesa 24.0 aborda una amplia gama de problemas y errores que han sido identificados en versiones anteriores y de las correcciones mas destacadas se incluyen:

  • Solución para fallos en la reproducción de video con la aceleración de hardware Radeon RX6600 habilitada.
  • Corrección de artefactos gráficos en texturas de agua en OpenGOAL.
  • Solución para fallos en el codificador HEVC al usar VAAPI: EFC en VCN2.
  • Solución para problemas de antialiasing en Blender con GPU AMD RDNA3.
  • Corrección de fallas de compilación con MSVC durante el ciclo de desarrollo 23.3.
  • Solución para errores durante el análisis SPIR-V de OpCopyLogical.
  • Solución para problemas de salida de profundidad conservadora con RADV, entre otros.

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

¿Cómo instalar los drivers de video Mesa en Linux?

Los paquetes de Mesa se encuentran en todas las distribuciones de Linux, por lo que su instalación puede realizarse ya sea descargando y compilando el código fuente (toda la información al respecto aquí) o de una forma relativamente sencilla, la cual depende de la disponibilidad dentro de los canales oficiales de tu distribución o de terceros.

Para los que son usuarios de Ubuntu, Linux Mint y derivados pueden añadir el siguiente repositorio en donde los controladores son actualizados de manera rápida.

sudo add-apt-repository ppa:kisak/kisak-mesa -y

Ahora vamos a actualizar nuestro listado de paquetes y repositorios con:

sudo apt update

Y finalmente podemos instalar los drivers con:

sudo apt upgrade

Para el caso de los que son usuarios de Arch Linux y derivados estos los instalamos con el siguiente comando:

sudo pacman -S mesa mesa-demos mesa-libgl lib32-mesa lib32-mesa-libgl

Para quienes sean usuarios de Fedora 32 pueden utilizar este repositorio, por lo que deben de habilitar corp con:

sudo dnf copr enable grigorig/mesa-stable

sudo dnf update

Finalmente, para los que son usuarios de openSUSE, pueden instalar o actualizar tecleando:

sudo zypper in mesa

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

Rust en Linux: avances, desafíos y estado actual

Controladores Rust en Linux

Desde que Linus Torvalds incluyó Rust en la versión 6.1 del Kernel de Linux, el lenguaje ha estado ganando terreno gradualmente y son cada vez más los desarrolladores que se unen a este movimiento.

Sin embargo, algunos de los desarrolladores del Kernel de Linux resaltan que los avances cada vez más supondrán más trabajo y desafíos, ya que dentro de sus comentarios dan a entender que es posible que surja un estancamiento.

Cabe aclarar que no mencionamos que la implementación llegue a un punto muerto, sino que dados los comentarios de diversos desarrolladores y como ya mencionamos, en el estado actual, ha comenzado a surgir la necesidad de disminuir el ritmo de trabajo, o al menos eso es lo que nos sugiere el siguiente artículo de LWN.net.

Y es que hace ya varias semanas me encontré con este artículo en donde se trata de abordar el estado actual del uso de Rust en Linux y analizar si el experimento con este lenguaje de programación ha sido exitoso.

Se menciona que desde hace algunos años, Rust ha sido un tema que no ha dejado de tocarse en la «Kernel Maintainers Summit» y la celebrada en este 2023 no fue la excepción, ya que desde la implementación oficial de Rust como segundo lenguaje de programación en Linux, Miguel Ojeda, desarrollador de Rust-for-Linux, destacó el creciente interés en el uso de Rust para el desarrollo del kernel durante la sesión dedicada a este tema.

Miguel Ojeda menciona que el proyecto Rust-for-Linux ha experimentado un impulso significativo en el último año, ya que se ha sumado un ingeniero a tiempo completo y un desarrollador estudiantil y que diversas empresas se han sumado al respaldado del trabajo. Además, se está trabajando para integrar la herramienta Coccinelle con el código Rust. Sin embargo, no todo es color de rosa, ya que uno de los desafíos actuales es reclutar más revisores para el código que se está desarrollando.

En el artículo se menciona qué los problemas han comenzado a ser notorios en la cadena de herramientas, ya que el progreso del compilador Rust basado en GCC, conocido como gccrs, se ha ralentizado. Por otro lado, el generador de código GCC para rustc muestra avances prometedores y ha sido fusionado con el compilador, lo que permitirá expandir el soporte de Rust a arquitecturas que no son compatibles con LLVM.

Dentro del kernel, se están realizando avances en varios subsistemas, tal es el caso de la implementación en Rust del binder de Android que ha demostrado un rendimiento comparable a la implementación en C, con una cantidad mínima de código inseguro. Además, se está trabajando en vinculaciones de sistemas de archivos con el objetivo de lograr soporte de solo lectura en Rust, con la visión de implementar un sistema de archivos completamente seguro en Rust.

Dave Airlie, el mantenedor del subsistema DRM (gráficos), dijo que, si se sale con la suya, habrá un controlador Rust DRM fusionado en los próximos lanzamientos. Christoph Hellwig respondió que Airlie estaba dispuesta a «hacer la vida de todos un infierno» para poder jugar con su juguete favorito. Hellwig dijo que fusionar Rust obligaría a otros a lidiar con un segundo lenguaje, nuevas cadenas de herramientas y «envoltorios con semántica extraña». Dan Williams dijo que la situación actual «es lo que parece el éxito» y que la comunidad del kernel ya estaba comprometida con Rust.

Aunque se observa un creciente interés por parte de los mantenedores en adoptar Rust, surgen desafíos, ya que se ha debatido la necesidad de tener controladores de referencia en el kernel escritos en Rust para mostrar cómo pueden escribirse controladores en este lenguaje. Sin embargo, la duplicación de funcionalidad entre controladores en Rust y C ha generado desconfianza entre los mantenedores.

La discusión sobre la inclusión de Rust ha tomado diferentes direcciones, pues algunos mantenedores abogan por la fusión de controladores Rust autónomos, como el controlador de binder, para demostrar su viabilidad, mientras que por el otro lado de la moneda otros expresan preocupaciones sobre la complejidad de mantener un kernel con dos lenguajes de programación.

Airlie continuó diciendo que gran parte del trabajo de Rust está actualmente bloqueado en una especie de problema del huevo y la gallina. Las abstracciones no se pueden fusionar hasta que haya un usuario para ellas, pero el código que necesita esas abstracciones se bloquea esperando que el código llegue a múltiples subsistemas. Como resultado, los desarrolladores que trabajan en Rust están arrastrando grandes cantidades de parches que necesitan para que su código funcione. Romper ese obstáculo requerirá permitir la entrada de algunas abstracciones sin usuarios inmediatos.

A pesar de los desafíos, la comunidad del kernel reconoce el potencial de Rust para mejorar la seguridad y la estabilidad del código. Se plantea la posibilidad de fusionar controladores más ampliamente utilizados en Rust en el futuro, una vez que se resuelvan las preocupaciones sobre la capacidad de revisión y mantenimiento.

Ojeda estuvo de acuerdo en que este problema ha ralentizado el progreso, pero dijo que ha tratado de no presionar a los mantenedores para que fusionen el código rápidamente. En el caso de las redes, irónicamente, los desarrolladores de Rust tuvieron que pedir a los encargados de la red que ralentizaran la fusión del código Rust.

Finalmente cabe mencionar que el camino hacia la adopción generalizada de Rust en Linux presenta desafíos, el interés y el progreso en este espacio son evidentes. Con el tiempo, se espera que Rust juegue un papel importante en la mejora de Linux.

Fuente: https://lwn.net/

from Linux Adictos https://ift.tt/1uh8JkI
via IFTTT

Kubuntu 24.04 se pasará a Calamares. Plasma 6 llegará en octubre

Kubuntu 24.04 con Calamares

La mayoría de distribuciones Linux más semi-populares se decantan por Calamares para instalar el sistema operativo. Las más populares de las que descienden otras, como Debian, Ubuntu o Fedora, usan sus propios instaladores, pero Calamares sigue siendo la opción elegida por otros muchos proyectos, como gran parte de los de base Arch, con Manjaro y EndeavourOS a la cabeza. Y este abril se le sumará una más: Kubuntu 24.04 Noble Numbat.

Ahora mismo y si no estoy equivocado, el único sabor de Ubuntu que no usa algo basado en Ubiquity/Subiquity es Lubuntu, que también usa el instalador con nombre de tapa de bar. Todos los demás usan o el instalador más nuevo de Ubuntu o el anterior, pero algo de Canonical. Hace unas horas, Kubuntu ha publicado una nota con parte de sus planes de futuro, y entre ellos pasa usar el instalador Calamares.

Kubuntu 24.04 con Plasma 5.27, 24.10 con Plasma 6.x

Los dos detalles más importantes nos cuentan que en la reunión que tuvieron el 30 de enero se habló del paso a Calamares y que se está preparando una versión alfa de Plasma 6 con el objetivo fijado en Ubuntu 24.10. De este modo se confirmaría lo que muchos ya nos esperábamos, que pasarán 18 meses con la misma versión – o sería más correcto decir «serie» – del entorno gráfico de KDE porque lo de este abril es una versión LTS y prefieren incluir algo estable.

Plasma 5.27 llegó el 14 de febrero de 2023. En estos momentos ya se han lanzado 10 versiones de mantenimiento, y este febrero debería llegar la décimo-primera. Plasma 6.0 llegará el 28 de febrero, y probablemente llegue sólo a KDE neon los primeros días; la mayoría de proyectos se esperarán un tiempo prudencial hasta añadirlo en sus repositorios oficiales.

Kubuntu 24.04 llegará en abril de 2024 con Plasma 5.27, Linux 6.8, Calamares, no se ha adelantado qué versión, y otros paquetes actualizados.

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

Cómo reiniciar Plasma sin reiniciar el sistema operativo

Reiniciar Plasma

El próximo 28 de febrero llegará Plasma 6.0, una actualización muy importante para el escritorio de KDE. Aunque yo no he experimentado fallos serios desde que subieron a Plasma 5, es posible que algo falle y plasmashell se cierre por completo. En ese momento veremos las aplicaciones, pero el panel inferior con Kickoff, por ejemplo, dejará de estar accesible. Ante un caso como el descrito o algo similar, ¿cómo podemos solucionarlo sin reiniciar el sistema operativo?

La mejor manera es hacerlo desde el terminal. El comando puede variar dependiendo de la versión de Plasma en la que estemos, y no era igual en KDE 4 que en Plasma 5. En la anterior versión del entorno gráfico se usaba el comando killall plasma-desktop && kstart plasma-desktop – ahí queda por si hay alguien que aún esté en esa versión -, pero a partir de la versión 5 se cambió el nombre del paquete a plasmashell. Los comandos quedarían así:

Reiniciar Plasma desde el terminal

Hay al menos dos maneras de reiniciar Plasma desde el terminal: con killall y con kquitapps5. El segundo no funcionará en Plasma 6, pero el primero es válido tanto para la v5.x como para la v6.x:

killall plasmashell && kstart plasmashell

El segundo quedaría así:

kquitapp5 plasmashell && kstart5 plasmashell

En el momento de escribir este artículo, por lo menos la orden kstart6 no existe, pero eso no significa necesariamente que no vaya a hacerlo nunca. Teniendo en cuenta que el primero funciona en ambas versiones, quizá merezca la pena recordar sólo ese.

Qué hacen estos comandos

  • killal termina todos los procesos asociados con lo que le sigue, en este caso plasmashell.
  • kquitapps5, o terminado en 6 si lo llegan a implementar, cierra la aplicación que le indicamos después, la misma que en el ejemplo anterior. Prácticamente hacen lo mismo, pero el primero es un comando de Linux y el segundo de KDE.
  • kstart se usa para lanzar aplicaciones, y lo que hará es iniciar Plasma.

Todo junto y para resumir, lo que hacen estos comandos es cerrar Plasma, o terminar de cerrarlo del todo, y volverlo a abrir, lo que es reiniciar el entorno gráfico. Rápido y sencillo.

.barra {display: flex;justify-content: flex-end;height: 25px; background-color: #333;border-radius: 5px 5px 0 0;}.rojo, .naranja, .verde{width: 12px;height: 12px; position: relative;border-radius: 50%;top: 7px; margin: 0 3px;}.rojo{background-color: rgb(248, 82, 82); margin-right: 7px;}.naranja{background-color: rgb(252, 186, 63);}.verde{background-color: rgb(17, 187, 17);}.terminal{background-color: black !important; border-radius: 5px !important;}pre{font-family:monospace !important; padding: 0 10px 10px; line-height: 1.5em; overflow: auto; background-color: black !important; color: #0EE80E !important} code {background-color: black; padding: 2px 5px; border-radius: 3px; color: #0EE80E; font-family:monospace; white-space: nowrap;}

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