Detectaron una vulnerabilidad en el formato ALAC que afecta a mayoría de los dispositivos Android MediaTek y Qualcomm

Check Point dio a conocer hace poco mediante una publicación de blog que ha identificado una vulnerabilidad en los decodificadores MediaTek (CVE-2021-0674, CVE-2021-0675) y Qualcomm (CVE-2021-30351) para el formato de compresión de audio Apple Lossless Audio Codec (ALAC).

Se menciona que el problema permite que el código del atacante se ejecute mientras se procesan datos con formato especial en el formato ALAC. El peligro de la vulnerabilidad se ve agravado por el hecho de que afecta a los dispositivos que ejecutan la plataforma Android, equipados con chips MediaTek y Qualcomm.

Como resultado del ataque, un atacante puede organizar la ejecución de malware en un dispositivo que tiene acceso a los datos multimedia y de comunicación del usuario, incluidos los datos de la cámara.

Según una estimación aproximada, 2/3 de todos los usuarios de teléfonos inteligentes basados ​​en la plataforma Android se ven afectados por el problema. Por ejemplo, en los EE. UU., la participación total de todos los teléfonos inteligentes Android vendidos en el cuarto trimestre de 2021 enviados con chips MediaTek y Qualcomm fue del 95,1 % (48,1 %: MediaTek, 47 %: Qualcomm).

Los problemas de ALAC que encontraron nuestros investigadores podrían ser utilizados por un atacante para un ataque de ejecución remota de código (RCE) en un dispositivo móvil a través de un archivo de audio con formato incorrecto. Los ataques RCE permiten a un atacante ejecutar de forma remota código malicioso en una computadora. El impacto de una vulnerabilidad RCE puede variar desde la ejecución de malware hasta que un atacante obtenga el control de los datos multimedia de un usuario, incluida la transmisión desde la cámara de una máquina comprometida.

Además, una aplicación de Android sin privilegios podría usar estas vulnerabilidades para escalar sus privilegios y obtener acceso a datos multimedia y conversaciones de usuarios.

Las vulnerabilidades de RCE permiten a un atacante ejecutar código arbitrario en un dispositivo remoto. Un atacante puede lograr RCE de varias maneras diferentes, que incluyen:

  • Ataques de inyección: muchos tipos diferentes de aplicaciones, como consultas SQL, utilizan datos proporcionados por el usuario como entrada para un comando. En un ataque de inyección, el atacante proporciona deliberadamente una entrada mal formada que hace que parte de su entrada se interprete como parte del comando. Esto permite a un atacante dar forma a los comandos ejecutados en el sistema vulnerable o ejecutar código arbitrario en él.
  • Ataques de deserialización: las aplicaciones suelen utilizar la serialización para combinar varios datos en una sola cadena para que sea más fácil de transmitir o comunicar. La entrada de usuario con formato especial dentro de los datos serializados puede ser interpretada por el programa de deserialización como código ejecutable.
  • Escritura fuera de los límites: las aplicaciones asignan regularmente fragmentos de memoria de tamaño fijo para almacenar datos, incluidos los datos proporcionados por el usuario. Si esta asignación de memoria se realiza incorrectamente, un atacante puede diseñar una entrada que escriba fuera del búfer asignado.

Aún no se han revelado los detalles de la explotación de la vulnerabilidad, pero se informa que se realizaron correcciones a los componentes de MediaTek y Qualcomm para la plataforma Android en diciembre de 2021. En el informe de diciembre sobre vulnerabilidades en la plataforma Android, los problemas se marcan como vulnerabilidades críticas en componentes cerrados para chips Qualcomm. La vulnerabilidad en los componentes de MediaTek no se menciona en los informes.

Check Point Research divulgó responsablemente la información a MediaTek y Qualcomm y trabajó en estrecha colaboración con ambos proveedores para asegurarse de que se solucionaran estas vulnerabilidades.

La vulnerabilidad es interesante por sus raíces. En 2011, Apple abrió bajo la licencia Apache 2.0 los códigos fuente del códec ALAC, que permite comprimir datos de audio sin pérdida de calidad, e hizo posible el uso de todas las patentes relacionadas con el códec. El código se publicó, pero no se mantuvo y no ha cambiado en los últimos 11 años.

Al mismo tiempo, Apple continuó apoyando por separado la implementación utilizada en sus plataformas, incluida la corrección de errores y vulnerabilidades en ella. MediaTek y Qualcomm basaron sus implementaciones de codecs ALAC en el código fuente abierto original de Apple, pero no abordaron las vulnerabilidades abordadas por la implementación de Apple en sus implementaciones.

Aún no hay información sobre la manifestación de una vulnerabilidad en el código de otros productos que también utilizan el código ALAC desactualizado. Por ejemplo, el formato ALAC se admite desde FFmpeg 1.1, pero el código de implementación del decodificador se mantiene activamente.

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

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

¿Presentaciones desde la línea de comandos?

presentaciones

Para muchos trabajos, conferencias, clases, etc., es necesario realizar presentaciones para mostrar lo que necesitas. Siempre se ha hablado de programas gráficos como puede ser PowerPoint, Impress, etc., pero también existen herramientas tan interesantes para CLI como tpp, con las que puedes realizar también presentaciones de la línea de comandos.

Puedes pensar a priori que esto es una desventaja frente a las otras opciones citadas, y lo es en algunos casos. Pero para presentaciones donde muestras snippets de código fuente, o comandos, entonces ahí tpp puede volverse especialmente interesante. Es por eso que me ha parecido bien dar a conocer esta herramienta para aquellos usuarios que aún no la conocían.

*Nota: para instalar el paquete tpp lo puedes realizar desde el gestor de paquetes de tu distro, como apt-get en Debian y derivados, dnf en CentOS/Fedora/RHEL y derivados, etc. Otra opción es descargarlo y compilarlo tú mismo desde el código fuente.

Una vez tienes tpp puedes comenzar a crear las presentaciones que necesites desde la línea de comandos, siguiendo estos pasos:

  • Primero: creas, con tu editor de texto favorito, un fichero de texto denominado ejemplo.tpp y dentro puedes incluir la cabecera de la presentación de este modo:

--author LxA
--title PRIMERA PRESENTACIÓN
--date today
--heading ¿Cómo usar tpp?

  • Segundo: ahora se crea una lista de items usando los colores, slide-in, etc. Para ello, en el mismo fichero sigues agregando:

---
--color orange
  *PRESENTACIÓN DE EJEMPLO 
---
--beginslideleft
--color blue
  *PRIMEROS EJEMPLOS
---
--endslideleft
--beginslidetop
--color red
  *SEGUNDOS EJEMPLOS
--color white
--endslidetop

  • Tercero: ahora puedes seguir agregando contenido. Por ejemplo, imagina que quieres mostrar comandos o código fuente en tu presentación, entonces puedes hacerlo como en este ejemplo:

---
--center Source Code

--beginoutput

#!/bin/bash

echo "Hola, esto es una prueba"

--endoutput

  • Cuarto: ahora es el momento de agregar las líneas para animar, por ejemplo:

--center Shell Output
---
--beginshelloutput
$ perl -e 'print "Hola, esto es un ejemplo.\n"'
Hola, esto es un ejemplo.
--endshelloutput

  • Quinto: puedes agregar más slides, ya que hasta ahora se ha usado solo uno:

---
--newpage
--boldon
--revon
--center Please check Perl's Manual Page for more info

Para conocer todas las posibles opciones de tpp para crear tus presentaciones, puedes usar el manual:


man tpp

Más información y obtención del paquete – Sitio de Github

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

Ya fue liberada la versión beta de Android 13

Google dio a conocer hace poco mediante una publicación de blog la liberación de la primera versión beta de Android 13, la cual incluye algunos nuevos cambios y adiciones desde las versiones preview 1 y preview 2 (de las cuales ya hablamos aquí en el blog).

De los cambios que hasta ahorita se conocen de lo que será la próxima versión de Android, se destacan por ejemplo cambios en el diseño, la posibilidad de elección del idioma para cada aplicación, nuevo mecanismo de conexión a dispositivos cercano, asi como tambien una interfaz de usuario de Android 12L.

Ya es abril y hemos logrado un progreso constante en el perfeccionamiento de las funciones y la estabilidad de Android 13, en torno a nuestros temas principales de privacidad y seguridad, productividad de los desarrolladores, así como compatibilidad con tabletas y pantallas grandes. Hoy pasamos a la siguiente fase de nuestro ciclo y lanzamos la primera versión beta de Android 13.

Para los desarrolladores, hay mucho que explorar en Android 13, desde características de privacidad como el nuevo permiso de notificación y el selector de fotos, hasta las API que lo ayudan a crear excelentes experiencias, como íconos de aplicaciones temáticas, ubicación rápida de mosaicos de configuración y soporte de idioma por aplicación. así como capacidades como audio Bluetooth LE y MIDI 2.0 a través de USB. En Beta 1, agregamos nuevos permisos para un acceso más granular a los archivos multimedia, API de enrutamiento de audio mejoradas y más. 

Cabe señalar que hasta el momento de las versiones preview presentadas, estas se han enfocado en mejorar la experiencia en dispositivos con pantallas grandes, como tabletas, Chromebooks y teléfonos inteligentes con pantallas plegables

Ya que por ejemplo para pantallas grandes, el diseño del menú desplegable de notificaciones, la pantalla de inicio y la pantalla de bloqueo del sistema se ha optimizado para utilizar todo el espacio de pantalla disponible, ademas de que tambien se agregó soporte para un modo de dos paneles en el configurador, en el que las secciones de configuración ahora están constantemente visibles en pantallas grandes.

Ademas de que se han mejorado los modos de compatibilidad para las aplicaciones, pues se propone la implementación de la barra de tareas, que muestra los íconos de las aplicaciones en ejecución en la parte inferior de la pantalla, lo que permite cambiar rápidamente entre programas y admite la transferencia de aplicaciones a través de la interfaz de arrastrar y soltar a varias áreas del modo multiventana (pantalla dividida), dividiendo la pantalla en partes para trabajar con varias aplicaciones simultáneamente.

Por la parte de los cambios en Android 13-beta1 desde Preview 2 podremos enocntrar que se proporciona la concesión selectiva de permisos para el acceso a archivos multimedia. Anteriormente, si se necesitaba leer archivos multimedia del almacenamiento local, se tenía que otorgar el derecho READ_EXTERNAL_STORAGE, que abre el acceso a todos los archivos, ahora puede otorgar acceso por separado a imágenes (READ_MEDIA_IMAGES), archivos de sonido (READ_MEDIA_AUDIO) o video (READ_MEDIA_VIDEO) .

Para las aplicaciones de generación de claves, las API Keystore y KeyMint ahora se brindan indicadores de error más detallados y precisos y permiten el uso de excepciones java.security.ProviderException para detectar errores

Otro de los cambios que se destacan en esta versión Beta de Android 13, es en AudioManager ha agregado una API para el enrutamiento de audio, que le permite determinar cómo se procesará la transmisión de audio. Se ha agregado el método getAudioDevicesForAttributes() para obtener una lista de dispositivos a través de los cuales es posible la salida de sonido, así como el método getDirectProfilesForAttributes() para determinar la posibilidad de reproducción directa de transmisiones de audio.

Finalmente cabe mencionar que se espera que Android 13 se lance en el tercer trimestre de 2022 y para aquellos interesados en evaluar las nuevas características de la plataforma, se ha propuesto un programa de prueba preliminar.

Las compilaciones del firmware están reparadas para dispositivos Pixel 6/6 Pro, Pixel 5/5a 5G, Pixel 4/4 XL/4a/4a (5G). Se ha proporcionado una actualización OTA para aquellos que instalaron la primera versión de prueba.

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/DOIK61w
via IFTTT

Richard Stallman habla sobre el estado del movimiento del software libre y ataca a Apple y Canonical

 

Hace algunos dias Richard Stallman habló sobre «el estado del movimiento del software libre» y en lo cual no ha sido amable con Apple y Canonical en estos comentarios.

Y es que Richard Stallman menciona que Apple continúa convirtiendo a las Mac en una especie de «prisión» al impedir que los usuarios hagan lo que quieran con sus máquinas e instalen sus propios programas o archivos binarios obtenidos de otras personas, a lo cual «señaló que esto debería ser ilegal», ademas de que Stallman también desaconseja el uso de Ubuntu, que dice que no es una distribución gratuita de GNU/Linux.

Para quienes desconocen de Richard Matthew Stallman (RMS), deben saber que tuvo una gran influencia en el mundo del software (en particular, el software libre), pero también es conocido por sus comentarios y posiciones a veces controvertidos.

Ferviente defensor del software libre, no pierde la oportunidad de criticar a las empresas en el origen de las soluciones propietarias y lidera una lucha especial contra Apple. RMS ha criticado repetidamente a la empresa y a su cofundador Steve Jobs, acusándolos de haber creado «un ecosistema informático cerrado en el que los usuarios están en prisión». Para él, nadie tiene derecho a prohibir que la gente haga lo que quiera con las máquinas que ha comprado.

“Steve Jobs, el pionero de la computación carcelaria genial diseñada para robarle a la gente su libertad, está muerto. No me alegro de que esté muerto, pero me alegro de que se haya ido. Nadie merece morir, ni siquiera Jobs, o Bill Gates, o incluso personas culpables de fechorías mayores. Pero todos merecemos el fin de la influencia maligna de Jobs en la informática de las personas. La gente debería dejar de elogiar a Jobs por el elegante estilo carcelario que creó con su firma. Es un error meter a los usuarios en la cárcel”, dijo el evangelista del software libre poco después de la muerte del difunto Steve Jobs.

En su presentación de una hora y media sobre «El estado del movimiento del software libre» Stallman no ha cambiado su retórica frente a Apple. Según la Free Software Foundation (FSF), «Debido a dificultades técnicas imprevistas, RMS realizó su presentación en forma de podcast». La FSF ha puesto a disposición el audio para que lo escuche, pero mientras tanto, aquí está la transcripción de algunos pasajes de su discurso.

RMS comenzó agradeciendo a todos los que contribuyeron con el software libre y alentó a aquellos que quieran ayudar a visitar el sitio web del Proyecto GNU.

“El movimiento del software libre es universal y moralmente no debería excluir a nadie. Aunque hay delitos que deben ser castigados, impedir que alguien contribuya al software libre castiga al mundo. Esa persona no”, dijo. También señaló algunas cosas que han mejorado en el movimiento del software libre, incluidas grandes mejoras en proyectos como GNU Emacs cuando se visualizan paquetes externos.

RMS estaba particularmente enojado porque «todas las empresas tecnológicas ahora quieren encerrar a las personas y subyugarlas». Según él, “esto desvía la informática de su propósito original, que es hacer la vida más fácil a las personas”.

“Bueno, las máquinas gratuitas que tenemos están envejeciendo y escaseando. Es difícil encontrar una manera de respaldar algo nuevo, porque tanto Intel como AMD diseñan su hardware para subyugar a las personas. Si fueran fundamentalmente críticos públicos, sería difícil que lo hicieran peor de lo que lo están haciendo”, dijo.

Luego habló sobre Ubuntu, la distribución desarrollada y comercializada por Canonical:

“Ubuntu es, por supuesto, una distribución no libre y no recomendaría a nadie que la use. Algunos paquetes importantes ahora solo se distribuyen mediante su sistema de paquetes que no respeta la libertad, no como paquetes Debian. Por lo tanto, es aún más difícil que antes obtener alguna libertad de una instalación de Ubuntu”, dijo RMS. 

Posterior a ello Stallman hablo sobre la libertad material y el Macintosh:

“Los Macins se están convirtiendo en prisiones, como los iMonsters. Cada vez es más difícil para los usuarios incluso instalar sus propios programas para que funcionen. Y eso, por supuesto, debería ser ilegal. Debería ser ilegal vender una computadora que no permita a los usuarios instalar su propio software desde el código fuente. Y probablemente no debería permitirse que la computadora le impida instalar archivos binarios que obtiene de otras personas, aunque es cierto que en tales casos lo hace bajo su propio riesgo», dijo RMS.

RMS terminó su presentación anunciando un nuevo libro que ha escrito, un manual para el compilador GNU C.

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

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

El proyecto VeriGPU anuncio el desarrollo de una GPU abierta

El proyecto VeriGPU dio a conocer hace pocos dias que ha comenzado a trabajar en el desarrollo de una GPU abierta, la cual tiene como objetivo ser desarrollada bajo el lenguaje de modelado y descripción de sistemas electrónicos Verilog.

Para quienes desconocen de VeriGPU, deben saber que este se posiciona como un procesador específico de aplicaciones (ASIC) optimizado para acelerar los cálculos relacionados con los sistemas de aprendizaje automático.

De manera iniciar, el proyecto se está desarrollando utilizando el simulador Verilog, pero después de que esté listo, se puede utilizar para producir chips reales.

Los planes incluyen compatibilidad con el marco de aprendizaje profundo PyTorch y la capacidad de desarrollar aplicaciones para VeriGPU utilizando la API HIP (interfaz de computación heterogénea). En un futuro no se descarta la incorporación de soporte para otras API, como SYCL y NVIDIA CUDA.

Es importante mencionar que el desarrollo de esta GPU está dirigida directamente al entrenamiento de aprendizaje automático. Por lo tanto, idealmente debería ser compatible con los marcos de aprendizaje automático actuales, como PyTorch y Tensorflow, esto significa que es casi seguro que debe ser compatible con NVIDIA CUDA o AMD HIP.

Aunque tambien se menciona que sé podría implementar una interfaz OpenCL o SYCL, aunque actualmente la compatibilidad con los marcos principales es limitada. Hay un marco de aprendizaje profundo de OpenCL dedicado en DeepCL, pero tiene un conjunto relativamente limitado de capas de red neuronal y posibles topologías de red, en comparación con PyTorch y Tensorflow.

Actualmente, no tenemos la intención de implementar la ejecución fuera de orden, es decir, comenzar una instrucción antes de que haya comenzado la anterior, porque esto es complicado en un escenario de subprocesos múltiples de una sola instrucción (SIMT), y porque esto hace que los núcleos usen más área de troquel. , y por lo tanto menos en número (o más caro).

Por otro lado, implementaremos la ejecución de instrucciones en paralelo, donde comenzamos una instrucción mientras la instrucción anterior aún se está ejecutando. Esto es estándar y bastante liviano, no ocupa demasiada área de troquel.

Actualmente no se implementa almacenamiento en caché de ningún tipo (sin nivel 1, sin nivel 2, sin nivel 3, ni siquiera caché de instrucciones: P). Dado que tengo la intención de crear una GPU, que tiene un mecanismo de caché diferente al de la CPU, pensaré en esto una vez que comience a parecerse más a una GPU.

La GPU evoluciona en función del conjunto de instrucciones de RISC-V, pero la arquitectura del conjunto de instrucciones de GPU interno resultante es poco compatible con RISC-V ISA, ya que en situaciones en las que el diseño de la GPU no se ajusta a la representación de RISC-V, ademas de que no se establece la tarea de mantener la compatibilidad con RISC-V.

Dado que el desarrollo se centra en las capacidades requeridas para los sistemas de aprendizaje automático, por lo tanto, para reducir el tamaño y la complejidad de la matriz del chip, solo se utiliza el formato de coma flotante BF16 y solo las operaciones de coma flotante que están en demanda para el aprendizaje automático, como exp, log, tanh y sqrt, están disponibles.

De los componentes ya disponibles se mencionan por ejemplo el controlador GPU, APU (Accelerated Processing Unit) para operaciones con enteros («+»,»-«,»/»,»*»), unidad para operaciones de punto flotante («+»,»*») y una unidad de ramificación, asi como también el soporte para el compilador HIP.

Para la creación de aplicaciones se ofrece ensamblador y soporte para compilar código C++ basado en LLVM. De las características previstas, se destacan la ejecución paralela de instrucciones, el almacenamiento en caché de datos y la memoria de instrucciones, las operaciones SIMT (Single Instruction Multiple Thread).

Finalmente, si estás interesado en poder conocer más al respecto sobre el desarrollo de esta GPU de código abierto, debes saber que los desarrollos del proyecto se distribuyen bajo la licencia MIT y puedes consultar el código, asi como los avances del proyecto desde el siguiente enlace.

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

La implementación OpenCL de Mesa escrita en rust ya supero las pruebas CTS

La nueva implementación de OpenCL (rusticl) desarrollada para el proyecto Mesa, escrita en Rust, ha superado con éxito las pruebas CTS (Kronos Conformance Test Suite) utilizadas por el consorcio Khronos para evaluar la compatibilidad con las especificaciones de OpenCL 3.0.

Para quienes desconocen de»Rusticl» deben saber que este se ha publicado como una nueva implementación de Mesa OpenCL escrita en el lenguaje de programación Rust.

Rusticl fue iniciado por el conocido colaborador de Mesa Karol Herbst de Red Hat quien comenzó como ingeniero del controlador de código abierto»Nouveau» de NVIDIA mientras estaba en Red Hat, y trabajó en el soporte informático Clover de Mesa y otros esfuerzos. Rusticl es un intento de Herbst de aprender el lenguaje de programación Rust y también de proporcionar una nueva (y con suerte superior) implementación de OpenCL.

Rusticl es mucho más moderno enfocado en OpenCL en comparación con el antiguo código Clover y es notable, sin embargo, es que Rusticl en este momento todavía no tiene soporte de imagen OpenCL que ha sido otro problema con Clover.

Rusticl confía en clc para compilar el código fuente de OpenCL en SPIR-V. Rusticl también depende de los controladores Mesa Gallium3D compatibles con NIR, pero todos los controladores principales ya lo hacen. Cabe señalar que Carol se puso en contacto con Khronos para obtener la certificación oficial de compatibilidad con OpenCL 3.0 en rusticl.

Y ahora, rusticl ha pasado con éxito las pruebas Kronos Conformance Test Suite para evaluar la compatibilidad con las especificaciones de OpenCL 3.0, asi lo anuncio en Twitter neil trevett:

Khronos se enorgullece de haber renunciado a todas las tarifas de adopción de MESA a lo largo de los años, y muchas implementaciones de MESA son oficialmente conformes. ¡Genial que OpenCL 3.0 de MESA esté pasando CTS! Infórmenos cuando MESA esté listo para ejecutar el Acuerdo de adopción de OCL 3.0 y podamos iniciar el proceso…

Las pruebas se realizaron en un sistema con GPU Intel de 12.ª generación (Alder Lake), con el cual el trabajo se realizó con el controlador Iris Mesa, pero se menciona que el proyecto debería funcionar con otros controladores Mesa que usen la representación intermedia (IR) sin tipo de los sombreadores NIR.

Rusticl actúa como una contraparte de la interfaz OpenCL Clover de Mesa y también se desarrolla utilizando la interfaz Gallium de Mesa. Clover lleva mucho tiempo en estado de abandono y rusticl se posiciona como su futuro reemplazo. Además de lograr la compatibilidad con OpenCL 3.0, el proyecto Rusticl se diferencia de Clover en que admite extensiones OpenCL para el procesamiento de imágenes , pero aún no admite el formato FP16.

Rusticl usa rust-bindgen para generar enlaces para Mesa y OpenCL que permiten llamar a las funciones de Rust desde el código C y viceversa.

La posibilidad de usar el lenguaje Rust en el proyecto Mesa se discute desde 2020. Entre las ventajas del soporte de Rust mencionan mejorar la seguridad y calidad de los drivers al eliminar problemas típicos cuando se trabaja con memoria, así como la posibilidad de incluir desarrollos de terceros en Mesa, como Kazan (una implementación de Vulkan en Óxido).

Entre las deficiencias, hay una complicación del sistema de compilación, la falta de voluntad para vincularse al sistema de paquetes de carga, un aumento en los requisitos para el entorno de compilación y la necesidad de incluir el compilador Rust en las dependencias de compilación que se requieren para construir componentes de escritorio clave en Linux.

Finalmente, se menciona que la solicitud para fusionar Rusticl con Mesa aún está pendiente y aún no se ha tomado una decisión sobre la inclusión del código de idioma Rust en Mesa, pero se espera que llegue en la versión de Mesa 22.2

Es por ello que antes de que Rusticl sea aceptado en la composición principal de Mesa, se puede usar una rama separada para construir, al compilar, debe especificar los parámetros de compilación «-Dgallium-rusticl=true -Dopencl-spirv=true -Dshader-cache=true -Dllvm =true».

Si estás interesado en poder conocer más al respecto sobre esta nueva especificación, puedes consultar los detalles en el siguiente enlace.

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

Shortwave 3.0 llega con retoques en la interfaz y estaciones privadas, entre otras novedades

Shortwave 3.0

Hace un tiempo existía una aplicación para Linux que se llamaba Gradio, y había muchos usuarios que estaban muy contentos con ella. Tras un tiempo en horas bajas, el proyecto recuperó fuerzas, pero lo hizo ya con un nuevo nombre. Desde entonces, la aplicación no ha hecho más que ir a mejor, y desde esta semana está disponible Shortwave 3.0. El cambio de la primera cifra significan cambios importantes, y los ha habido.

Shortwave 3.0 llega con muchos y muy vistosos cambios. Para empezar, se ha mejorado la interfaz de usuario. En este aspecto, es compatible con el modo oscuro de GNOME 42 y se ha actualizado para la última versión de libadwaita. Las novedades más destacadas son las que tenéis a continuación.

Novedades más destacadas de Shortwave 3.0

  • Soporte para el modo oscuro de GNOME 42.
  • Se pueden añadir emisoras privadas a la biblioteca. Podremos añadir emisoras manualmente, incluso de servicios de pago si ofrece una clave de API.
  • Ahora se pueden guardar los datos de las emisoras en el disco. Esto permitirá, por ejemplo, que si una estación se elimina del servidor, seguirá estando disponible en la aplicación. Primero nos notificará, pero la radio funcionará mientras siga emitiendo en la misma dirección.
  • Mejorada la ordenación de las búsquedas.
  • Ha adoptado la última versión de libadwaita.
  • Diseño Adwaita más actualizado.
  • Visualización de la información sobre la tasa de bits de la emisora, que también puede utilizarse como opción de clasificación.
  • Nuevo botón en la página de búsqueda que permite ordenar los resultados de la búsqueda.
  • Diálogo de emisoras revisado, con información más clara.
  • Actualización de la notificación del escritorio al cambiar de canción, en lugar de generar una nueva notificación por separado para cada canción.
  • Ahora se puede utilizar normalmente, incluso si radio-browser.info está fuera de línea/no disponible.

Shortwave 3.0 ya está disponible en Flathub. Los usuarios de Arch Linux también lo tienen en AUR. El paquete snap, para no variar, no está actualizado.

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

Krita 5.0.6 llega sólo para corregir un par de fallos

Krita 5.0.6

Esta vez no ha habido salto de versiones. A lo mejor lo hay en un futuro próximo, si alguna de las tiendas en las que entregan el software decide que hay algo que tienen que cambiar. Pero lo que tenemos disponible desde hace unas horas es Krita 5.0.6, una versión que ha llegado para corregir errores. Esta no se trata de lo que se conoce como «hotfix», es decir, una actualización en donde se solucionan muchos bugs.

Krita 5.0.6 ha sido lanzado para corregir tan sólo dos fallos. Con una lista de cambios tan corta, uno se pregunta si era necesario lanzar una actualización o era mejor esperarse y arreglar más problemas, pero el equipo de desarrolladores ha decidido que sí. Probablemente alguno de los fallos era especialmente molesto o se manifestaba más de lo esperado, lo que podría traducirse en dificultar el trabajo.

Los dos bugs que corrige Krita 5.0.6

Lo que ha corregido KDE en Krita 5.0.6 es un cuelgue (crash) al trabajar con capas vectoriales o selecciones vectoriales y utilizar mucho la función de deshacer y otro al eliminar una capa vectorial con una máscara de transparencia animada. Los desarrolladores no han mencionado hoy si esta temprana versión ha llegado para no arrastrarla en una actualización mayor, un Krita 5.1.0 que ya está en el punto de mira de los desarrolladores dibujantes de KDE. Krita 5.0.5 llegó hace menos de dos semanas, y lo hizo con muchas correcciones. Llegó tras saltarse dos versiones, «gracias» a una tienda de software que rechazó dos entregas que no cumplían con los requisitos de la misma.

Krita 5.0.6 ya está disponible desde su página web oficial para Windows, macOS y Linux. Desde allí, los usuarios de Linux podemos descargar una AppImage, pero también añadir un repositorio para Debian/Ubuntu. Para el que prefiera otros tipos de paquetes, pronto debería llegar a Flathub y Snapcraft, aunque en el caso del paquete snap sigue en la v4.4.5 y podría tardar mucho más tiempo

from Linux Adictos https://ift.tt/70SyqDp
via IFTTT

Chrome 101 llega con un gestor de prioridades para cargar el contenido, entre otras novedades

Chrome 101 llega con un gestor de prioridades para cargar el contenido

Tras la 100ª versión en la que introdujeron un logotipo ligeramente rediseñado, Google ha lanzado hace unas horas Chrome 101. Entre sus novedades, aunque no hay ninguna realmente importante, hay una que sí me llama la atención. Es lo que en inglés recibe el nombre de Priority Hints, con lo que el navegador dará prioridad sobre qué cargar antes y qué cargar después. Esto puede mejorar la experiencia de usuario, ya que, si funciona como se espera, cargará antes lo que realmente importa.

Por otra parte, aunque esto también llegará a otros navegadores basados en Chromium, Chrome 101 ha corregido muchos fallos de seguridad que estaban presentes en todas las plataformas, es decir, Windows, macOS, Linux y en cualquier otro sistema operativo en el que se puede instalar la versión de escritorio.

Novedades más destacadas de Chrome 101

  • Priority Hints como forma de indicar la importancia relativa de un recurso al navegador web. Las Sugerencias de Prioridad a su vez pueden dar más (o menos) prioridad al cargar diferentes activos.
  • La propiedad CSS font-palette ahora permite a los desarrolladores seleccionar una paleta de una fuente de color.
  • Compatibilidad con la función CSS hwb() para especificar los colores sRGB para los valores de tonalidad, blancura y negrura (HWB).
  • Compatibilidad con la API MediaCapabilities para flujos WebRTC.
  • Adiciones a la compatibilidad con la API de confirmación de pagos seguros v3.
  • USBDevice tiene ahora un método forget() para revocar voluntariamente un permiso a un dispositivo USB.
  • Se ha eliminado WebSQL para contextos de terceros, diez años después de que se abandonara el estándar de bases de datos WebSQL.

Chrome 101 ya está disponible para su descarga desde la página web oficial. En las distribuciones en donde se añade el repositorio automáticamente tras la primera instalación, la actualización ya está esperando en el centro de software o actualizando desde el terminal. En las basadas en Arch Linux, llegará en las próximas horas a AUR.

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

Cómo eliminar los espacios de los nombres de archivos

teclado, cómo eliminar espacios nombres archivos

En muchas ocasiones te habrás topado con nombres de ficheros y directorios que tienen espacios intermedios en sus nombres, especialmente aquellos que provienen de Windows. Estos espacios son en muchas ocasiones molestos, especialmente para trabajar desde el shell, ya que necesitas identificarlos para que no sean tratados como nombres u opciones de un comando separadas. Por eso, en este tutorial vamos a ver algunas formas de eliminar los espacios de forma automatizada.

Además, también veremos cómo se pueden usar estos ficheros o directorios con nombres que tienen espacios sin que te lance un error.

Cómo usar ficheros y directorios con espacios

Para tratar de escapar de los espacios de los nombres de los ficheros y directorios en el terminal de Linux, puedes hacerlo de estas formas:

  • Incluyendo «» (comillas dobles) en parte de la ruta donde haya espacios o en toda ella. Por ejemplo:

cd "nombre con espacio"/

  • Usando un carácter \ antes de cada espacio. Por ejemplo:

nano nombre\ con\ espacio.txt

De estas formas, lograrás eludir estos molestos espacios. Ahora bien, para no tener que volver a usar estas opciones que pueden ser más incómodas, podrás seguir los siguientes pasos…

Cómo eliminar los espacios de los nombres

Ahora bien, puedes usar varios métodos para que estos espacios en nombres dejen de ser un problema para siempre. Si tienes gran cantidad de nombres con espacio, no es lógico hacerlo uno a uno, pero se puede automatizar estas tareas para eliminar o sustituir los espacios:

  • Usar el comando rename para ello. Por ejemplo, el primero de estos comandos elimina los espacios de todos los .txt, mientras que el segundo lo hace en todos los archivos dentro del directorio actual:

rename ‘s/\s/_/g’ ./*.txt
rename ‘s/\s/_/g’ ./*.*

  • Usar find para reemplazar todos los nombres que tengan espacios, sustituyendo estos por _. Por ejemplo, hacerlo con todos los .txt del directorio actual o de todo el FS:

find . -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \;

**find / -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \;

**¡Cuidado con el segundo comando! Puede alterar nombres que sean empleados por ciertos programas y que dejen de funcionar.

from Linux Adictos https://ift.tt/5nBK0tv
via IFTTT