Se ha presentado la primera versión de carbonOS, una distribución de Linux para usuarios, construida utilizando un modelo de montaje atómico del sistema, donde el entorno básico se entrega como un todo, sin dividirse en paquetes individuales. Aplicaciones adicionales se instalan en formato Flatpak y se ejecutan en contenedores aislados. El tamaño de la imagen de instalación es de 1.7 GB. Los avances del proyecto se distribuyen bajo la licencia MIT.
El contenido del sistema base se monta en modo solo lectura para protegerlo contra modificaciones en caso de compromiso (además, en el futuro se planea incorporar la capacidad de cifrado de datos y verificación de la integridad de los archivos mediante firmas digitales). La partición /usr/local es accesible para escritura. El proceso de actualización del sistema se reduce a la descarga en segundo plano de una nueva imagen del sistema y el cambio a ella después de reiniciar. En este proceso, la antigua imagen del sistema se guarda y, si lo desea o surgen problemas, el usuario puede volver a la versión anterior en cualquier momento. Durante el desarrollo de la distribución, el entorno del sistema se compone utilizando la herramienta OSTree (la imagen se forma a partir de un repositorio similar a Git) y el sistema de compilación BuildStream, sin utilizar paquetes de otras distribuciones.
Las aplicaciones instaladas por el usuario están aisladas entre sí en contenedores. Además de la instalación de paquetes Flatpak, la distribución también permite usar la herramienta nsbox para crear contenedores arbitrarios, en los que pueden alojarse entornos de distribuciones tradicionales, como Arch Linux y Debian. También se proporciona soporte para la herramienta podman, que garantiza la compatibilidad con contenedores Docker. Se sugiere un instalador gráfico y una interfaz de configuración inicial del sistema para la instalación de la distribución.
Como sistema de archivos, se utiliza Btrfs con compresión de datos almacenados y aplicación activa de instantáneas. Para manejar situaciones de falta de memoria, se emplea systemd-oomd, y en lugar de una partición de intercambio tradicional se utiliza la tecnología swap-on-zram, que permite almacenar las páginas de memoria que deben ser desalojadas en forma comprimida. En la distribución se implementa un mecanismo centralizado de gestión de privilegios basado en Polkit: sudo no es compatible y la única forma de ejecutar comandos con privilegios de root es a través de pkexec.
El proyecto está desarrollando su propio entorno de usuario GDE (Graphite Desktop Environment), basado en GNOME 42 e incluye aplicaciones de la suite GNOME. Entre las diferencias respecto a GNOME: pantallas de entrada modernizadas, configurador, indicadores de volumen y brillo, panel y el shell Graphite. Para gestionar la instalación de actualizaciones del sistema se utiliza un gestor de aplicaciones basado en GNOME Software. Para procesar flujos multimedia se emplea PipeWire. Se proporciona soporte integrado para una variedad de códecs multimedia.
Fuente: opennet.ru
