La empresa System76, que desarrolla la distribución de Linux Pop!_OS, ha publicado el lanzamiento del entorno de escritorio COSMIC 1.1.0. Los paquetes de COSMIC 1.1.0 están disponibles en la distribución Pop!_OS 24.04 y se espera su llegada en breve a Fedora, NixOS, Arch Linux, openSUSE, Aeyrin OS, Redox y CachyOS. El código está escrito en Rust y se distribuye bajo las licencias GPLv3 (aplicaciones) y MPL-2.0 (bibliotecas).
COSMIC se desarrolla como un proyecto universal, no ligado a una distribución específica y conforme a las especificaciones de Freedesktop.
Para construir la interfaz en COSMIC se utiliza la biblioteca Iced, que emplea tipos seguros, una arquitectura modular y un modelo de programación reactiva, además de ofrecer una arquitectura familiar para desarrolladores acostumbrados al lenguaje de construcción de interfaces declarativas Elm. Se proporcionan varios motores de renderizado que soportan Vulkan, Metal, DX12, OpenGL 2.1+ y OpenGL ES 2.0+. A los desarrolladores se les ofrece un conjunto completo de widgets, la posibilidad de crear manejadores asincrónicos y utilizar un diseño adaptable de los elementos de la interfaz según el tamaño de la ventana y la pantalla.
Además del uso del lenguaje Rust, entre las características de COSMIC destacan los modos de diseño híbrido de mosaico de ventanas y agrupamiento de ventanas en pila (agrupación de ventanas similar a las pestañas en un navegador), que pueden habilitarse en conexión con escritorios virtuales. El proyecto también está desarrollando un compositor. servidor cosmic-comp basado en Wayland.
Los cambios principales en comparación con la versión 1.0.0:
- Se ha incluido la aplicación cosmic-monitor para obtener información del sistema, ver la lista de procesos en ejecución y monitorear gráficamente el consumo de recursos.
- En composición servidor Se ha añadido soporte para asignar nombres a los escritorios virtuales anclados. Se ha agregado soporte para usar múltiples ventanas en pantalla completa en un solo escritorio (necesario para ejecutar juegos desde el modo Big Picture en Steam). Se ha implementado un desplazamiento suave con la rueda del ratón. Se ha añadido la opción de asignar un tiempo de espera para ocultar automáticamente el cursor.
- Se ha implementado el soporte para esquinas redondeadas en todas las ventanas, no solo en las aplicaciones COSMIC. Se ha añadido la opción de mostrar sombras para las ventanas, entre otras cosas, incluso en la disposición de mosaico. Se añadió una sección en la configuración de apariencia para elegir el estilo de las esquinas y sombras de las ventanas: «Configuración > Escritorio > Apariencia > Sombra de ventana y esquinas».
- Se ha implementado la activación de ventanas de clientes X11 que funcionan a través de XWayland, lo que permite a los indicadores en la bandeja del sistema cambiar el foco a ventanas en otros escritorios virtuales. El tamaño de los iconos para las aplicaciones X11 se ha adaptado al nivel de escala establecido. Se ha facilitado la apertura de aplicaciones X11 en pantalla completa dentro de ventanas flotantes o mosaicos. Se ha añadido la opción '—no-xwayland' para ejecutar sin Xwayland.
- Se ha añadido una opción en el applet de gestión de energía para mostrar el nivel de carga de la batería en porcentaje.
- Se han implementado los protocolos de Wayland: pointer-warp-v1 para mover instantáneamente el puntero a una posición específica y pointer-constraints para limitar (bloquear) los punteros.
- En el administrador de archivos, el emulador de terminal y el editor de texto se ha implementado la reorganización de pestañas por medio de arrastrar y soltar.
- En cosmic-launcher, ahora se muestran como preferidos los iconos de las aplicaciones en formato SVG.
- Se ha separado la funcionalidad vinculada a systemd y logind, lo que ha permitido implementar la capacidad de manejar la apertura o cierre de la tapa de la computadora portátil en sistemas sin systemd, como el uso de OpenRC con elogind.
- Se ha añadido una asociación de archivos para invocar el editor cosmic-edit al intentar abrir archivos vacíos que correspondan al tipo MIME application/x-zerosize.
- En el programa de creación de capturas de pantalla se ha asegurado el recuerdo del área seleccionada de la pantalla.
- El servicio de instalación de fondos de escritorio cosmic-bg ha implementado un escaneo recursivo de imágenes en los directorios especificados por el usuario.
- El administrador de archivos ha implementado una vista previa de archivos de texto. En lugar de caracteres unicode, se utilizan iconos separados para los modos de ordenación. Se ha mejorado el procesamiento de tipos MIME. Se ha añadido soporte para la navegación por archivos utilizando las teclas Page-Up y Page-Down. Se ha proporcionado la opción de añadir acciones definidas por el usuario al menú contextual. Se ha añadido soporte para la búsqueda en la lista de archivos abiertos recientemente y en la papelera. Se ha añadido una opción para copiar la ruta del archivo al presionar Shift.
Se ha añadido soporte para pegar en forma de archivos de imágenes, videos y texto desde el portapapeles. Se ha añadido la función para abrir varios directorios en pestañas separadas. Se ha añadido una opción para transferir la fecha de creación y modificación del archivo al copiar. Se ha implementado la posibilidad de ingresar rutas de red en el panel. Se ha agregado autocompletado de la entrada de ruta en el panel al presionar la tecla Tab o Shift-Tab. Se ha añadido un cuadro de diálogo de confirmación para la operación de vaciado de la papelera.
- La interacción entre procesos a través de la API Varlink ha sido trasladada a cosmic-settings-daemon, cosmic-settings, el applet de sonido y cosmic-osd.
- Se ha mejorado la suavidad del ocultamiento automático de la barra.
- En el configurador cosmic-settings se ha implementado un cuadro de diálogo para emparejarse con teclados Bluetooth mediante un código PIN. Se han añadido configuraciones para controlar el cambio de enfoque de entrada. Se ha implementado soporte para controlar el brillo de monitores externos. Se ha añadido una opción para desactivar el cambio automático al mover el cursor más allá de la pantalla. escritorios virtuales Se ha añadido una función para buscar en la lista de redes inalámbricas disponibles. Se ha implementado la posibilidad de asignar disposiciones de teclado personalizadas.
Se ha implementado una función de activación rápida de búsqueda: comenzar a escribir en el teclado ahora hace que aparezca la barra de búsqueda en cualquier sección del configurador. Se ha añadido la posibilidad de aplicar temas en formato RON (Rusty Object Notation) a través de la interfaz de línea de comandos. Se ha añadido una subsección con opciones para personas con discapacidades en la página de configuración de combinaciones de teclas. Se ha añadido la combinación Super+Alt+S para activar el lector de pantalla. Se ha habilitado por defecto la simulación de clic táctil en el panel táctil. Se ha añadido soporte. VPN-de conexiones que requieren autenticación de dos factores.
- En el applet App-List se ha añadido soporte para filtrar las aplicaciones mostradas en relación con los escritorios o pantallas. Se ha implementado la posibilidad de cerrar aplicaciones haciendo clic con el botón del medio del mouse.
- En la interfaz de cambio entre escritorios virtuales se ha implementado un desplazamiento cíclico al usar la rueda del mouse, similar al comportamiento del applet de cambio de escritorios en la barra. Se ha mejorado la velocidad de desplazamiento de las miniaturas de los escritorios utilizando el panel táctil.
Se ha añadido la activación automática de la búsqueda de aplicaciones al comenzar a escribir texto. - Se ha añadido soporte para utilizar el gestor del sistema OpenRC para gestionar servicios relacionados con Bluetooth.
- Se permite el cambio de brillo, volumen y distribución del teclado mediante atajos de teclado durante el bloqueo de pantalla.
- En el cosmic-settings-daemon se ha implementado la generación de temas para aplicaciones Qt mediante las utilidades qt5ct y qt6ct.
- En el reproductor multimedia cosmic-player se han implementado configuraciones para gestionar la velocidad de reproducción, y se han añadido botones para la reproducción repetida/cíclica y el rebobinado/avance rápido. Se ha asegurado que el sonido se apague al mostrar miniaturas con la imagen del fotograma correspondiente a la posición seleccionada en la barra de desplazamiento.

- En el gestor de aplicaciones cosmic-store se ha añadido un backend rpm-ostree y un backend para la descarga de paquetes en varios hilos. Se ha implementado el soporte para abrir paquetes en formato RPM. Se ha añadido una opción para limpiar los datos de aplicaciones Flatpak tras su eliminación.
- En la interfaz de configuración inicial (COSMIC Initial Setup), se ha añadido soporte para sistemas con múltiples monitores y se ha activado por defecto el lector de pantalla.
- En el emulador de terminal cosmic-term hay una opción para abrir una nueva ventana en el directorio actual. Se ha aumentado el tamaño del historial del contenido desplazable a 100 mil líneas. Se ha añadido la opción ‘--working-directory’. Se ha añadido un botón en el menú contextual para copiar enlaces. Se ha implementado la carga de contraseñas en memoria solo al abrir la página de gestión de contraseñas y la eliminación de contraseñas de la memoria al cerrarla. Se ha añadido soporte para la selección de contenido haciendo clic mientras se mantiene la tecla Shift.
- En la biblioteca libcosmic, que se utiliza en muchas aplicaciones,
se ha añadido la posibilidad de asignar combinaciones de teclas para distribuciones de teclado no latinas. - En la cosmic-app-library se ha incluido wgpu y se ha implementado el soporte para iconos ico y xpm.
- Se permite el uso de marcado HTML en las notificaciones mostradas.
- Para activar VPN, el modo avión y los agentes de gestión de claves se utiliza el paquete nmrs (un enlace Rust sobre NetworkManager).
- En la biblioteca de aplicaciones (cosmic-app-library) se permite la reorganización mediante el arrastre de elementos con el ratón.
- Se ha implementado una nueva versión de la biblioteca iced con optimizaciones de rendimiento, una animación mejorada y soporte para métodos de entrada.


Fuente: opennet.ru

