Lanzamiento del sistema de paquete autónomo Flatpak 1.8.0

Publicado nueva rama estable del kit de herramientas Paquete plano 1.8, que proporciona un sistema para crear paquetes autónomos que no están vinculados a distribuciones de Linux específicas y se ejecutan en un contenedor especial que aísla la aplicación del resto del sistema. Se proporciona soporte para ejecutar paquetes Flatpak para Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint y Ubuntu. Los paquetes Flatpak están incluidos en el repositorio de Fedora y son compatibles con el administrador de aplicaciones nativo de GNOME.

Llave innovaciones en la rama Flatpak 1.8:

  • Se ha simplificado la implementación de la instalación en modo P2P (le permite organizar la carga de aplicaciones y conjuntos de tiempo de ejecución a través de nodos intermedios o unidades para sistemas sin conexión de red). Se ha interrumpido el soporte para la instalación a través de hosts intermedios en la red local. De forma predeterminada, la descarga automática de repositorios ubicados en unidades USB locales está deshabilitada. Para habilitar repositorios locales intermedios, debe configurar el repositorio creando un enlace simbólico desde /var/lib/flatpak/sideload-repos o
    /run/flatpak/sideload-repos. El cambio simplificó la implementación interna del modo P2P y aumentó su eficiencia.

  • Se agregó una unidad systemd opcional para detectar automáticamente repositorios adicionales en unidades USB externas conectadas.
  • Para las aplicaciones que tienen acceso al sistema de archivos, el directorio /lib del entorno host se reenvía a /run/host/lib.
  • Se han agregado nuevos permisos de acceso a FS: "host-etc" y "host-os", que permiten el acceso a los directorios del sistema /etc y /usr.
  • Para generar código de análisis de archivos más eficiente, se utiliza GVariant de ostreee compilador-de-esquemas-variantes.
  • La configuración de cripta de compilación proporciona la capacidad de compilar sin
    libsistemad;

  • Se habilitó el montaje de sockets Journal en modo de solo lectura.
  • Se agregó soporte para exportar directorios para exportar documentos.
  • Permite el acceso directo a dispositivos de audio ALSA para aplicaciones que tengan acceso a Pulseaudio.
  • En la API Transacción Flatpak Se agregó una señal de "instalar autenticador" que los clientes pueden utilizar para instalar los autenticadores necesarios para completar una transacción.
  • Se habilitó el uso de información de zona horaria basada en /etc/localtime del sistema host, lo que resolvió problemas relacionados con la zona horaria en algunas aplicaciones.
  • Dejé de instalar el archivo env.d desde gdm porque los generadores systemd son mejores en esta tarea.
  • La utilidad create-usb tiene habilitada la exportación de confirmación parcial de forma predeterminada.
  • El archivo sysusers.d se ha proporcionado para crear los usuarios necesarios a través de systemd.
  • La opción “-[no-]follow-redirect” se ha agregado a los comandos “flatpak remote-add” y “flatpakmodify” para deshabilitar/habilitar la redirección a otro repositorio.
  • En el sistema
    portales Se agregó Spawn API para obtener el ID de proceso real (PID) de la aplicación en ejecución.

  • Todos los repositorios OCI (Open Container Initiative) se han convertido para utilizar el autenticador flatpak-oci-authenticator.
  • Se agregó la opción “--commit=" a los comandos “flatpak Remote-info” y “Flatpak Update” para configurar una versión específica de los repositorios OCI.
  • Se agregó soporte inicial para actualizaciones delta para repositorios OCI.
  • Se agregó el comando "actualización de Flatpak", que es un alias del comando "actualización de Flatpak".
  • Se implementaron scripts de finalización de entrada para el shell de comandos fish.

Te recordamos que Flatpak permite a los desarrolladores de aplicaciones simplificar la distribución de sus programas que no están incluidos en los repositorios de distribución estándar al entrenamiento un contenedor universal sin crear conjuntos separados para cada distribución. Para los usuarios preocupados por la seguridad, Flatpak les permite ejecutar una aplicación cuestionable en un contenedor, brindando acceso solo a las funciones de red y archivos de usuario asociados con la aplicación. Para los usuarios interesados ​​en nuevos productos, Flatpak les permite instalar las últimas versiones estables y de prueba de aplicaciones sin la necesidad de realizar cambios en el sistema. Por ejemplo, actualmente los paquetes Flatpak ya están van a para LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio, etc.

Para reducir el tamaño del paquete, incluye sólo dependencias específicas de la aplicación, y las bibliotecas básicas del sistema y de gráficos (bibliotecas Gtk+, Qt, GNOME y KDE, etc.) están diseñadas como entornos de ejecución estándar de complementos. La diferencia clave entre Flatpak y Snap es que Snap utiliza los componentes del entorno principal del sistema y el aislamiento basado en el filtrado de llamadas del sistema, mientras que Flatpak crea un contenedor separado del sistema y opera con grandes conjuntos de tiempo de ejecución, proporcionando no paquetes como dependencias, sino estándar. sus entornos de sistema (por ejemplo, todas las bibliotecas necesarias para el funcionamiento de los programas GNOME o KDE).

Además del entorno de sistema estándar (tiempo de ejecución), instalado a través de un especial repositorio, se proporcionan dependencias adicionales (paquete) necesarias para que la aplicación funcione. En total, el tiempo de ejecución y el paquete forman el relleno del contenedor, a pesar de que el tiempo de ejecución se instala por separado y se vincula a varios contenedores a la vez, lo que le permite evitar la duplicación de archivos del sistema comunes a los contenedores. Un sistema puede tener instalados varios tiempos de ejecución diferentes (GNOME, KDE) o varias versiones del mismo tiempo de ejecución (GNOME 3.26, GNOME 3.28). Un contenedor con una aplicación como dependencia utiliza un enlace solo a un tiempo de ejecución específico, sin tener en cuenta los paquetes individuales que componen el tiempo de ejecución. Todos los elementos que faltan se empaquetan directamente con la aplicación. Cuando se forma un contenedor, el contenido del tiempo de ejecución se monta como la partición /usr y el paquete se monta en el directorio /app.

El llenado de contenedores de aplicaciones y tiempo de ejecución se forma mediante tecnología. OSTree, en el que la imagen se actualiza atómicamente desde un repositorio similar a Git, lo que permite aplicar métodos de control de versiones a los componentes de la distribución (por ejemplo, puede hacer retroceder rápidamente el sistema a un estado anterior). Los paquetes RPM se traducen al repositorio OSTree usando una capa especial rpm-ostree. No se admite la instalación y actualización separada de paquetes dentro del entorno de trabajo; el sistema no se actualiza a nivel de componentes individuales, sino en su conjunto, cambiando atómicamente su estado. Proporciona herramientas para aplicar actualizaciones de forma incremental, eliminando la necesidad de reemplazar completamente la imagen con cada actualización.

El entorno aislado generado es completamente independiente de la distribución utilizada y, con la configuración adecuada del paquete, no tiene acceso a archivos y procesos del usuario o del sistema principal, no puede acceder directamente al equipo, con excepción de la salida vía DRI, y el subsistema de red. Organización de entrada y salida de gráficos. implementado utilizando el protocolo Wayland o mediante el reenvío de socket X11. La interacción con el entorno externo se basa en el sistema de mensajería DBus y una API de Portals especial. Para aislamiento utilizado capa intermedia bubblewrap y tecnologías tradicionales de virtualización de contenedores de Linux basadas en el uso de cgroups, espacios de nombres, Seccomp y SELinux. PulseAudio se utiliza para emitir sonido.

Fuente: opennet.ru

Añadir un comentario