Dispoñible xestor de paquetes GNU Guix 1.0 e distribución baseada en GuixSD

tivo lugar versión do xestor de paquetes GNU Guix 1.0 e o kit de distribución GuixSD GNU/Linux (Guix System Distribution) construído sobre a súa base. Un cambio significativo no número de versión débese á finalización da implementación de todos obxectivosconfigurado para formar un lanzamento histórico. O lanzamento resumiu sete anos de traballo no proxecto e considérase listo para o uso diario. Para cargar formado imaxes para instalación en USB Flash (243 Mb) e uso en sistemas de virtualización (474 ​​Mb). O traballo é compatible con arquitecturas i686, x86_64, armv7 e aarch64.

O kit de distribución permite a instalación tanto como sistema operativo autónomo en sistemas de virtualización, en contedores e en equipos convencionais, e lanzamento en distribucións GNU/Linux xa instaladas, actuando como plataforma para o despregue de aplicacións. O usuario dispón de funcións como contabilidade de dependencias, compilacións repetibles, traballar sen root, retroceder a versións anteriores en caso de problemas, xestión da configuración, clonación de ambientes (crear unha copia exacta do entorno de software noutros equipos), etc.

O principal innovacións:

  • Engadido novo instalador interactivo, que funciona en modo texto;

    Dispoñible xestor de paquetes GNU Guix 1.0 e distribución baseada en GuixSD

  • Preparado unha nova imaxe para máquinas virtuais, adecuada tanto para familiarizarse co kit de distribución como para crear ambientes de traballo para o desenvolvemento;
  • Engadíronse novos servizos do sistema cups-pk-helper, imap4d, inputattach, localed, nslcd, zabbix-agent e zabbix-server;
  • Versións de software actualizadas en paquetes 2104, engadiron 1102 paquetes novos. Incluíndo versións actualizadas de clojure 1.10.0, cups 2.2.11, emacs 26.2, gcc 8.3.0, gdb 8.2.1, ghc 8.4.3,
    gimp 2.10.10, glibc 2.28, gnome 3.28.2, gnupg 2.2.15, go 1.12.1,
    guile 2.2.4, icecat 60.6.1-guix1, icedtea 3.7.0, inkscape 0.92.4,
    libreoffice 6.1.5.2, linux-libre 5.0.10, mate 1.22.0, ocaml 4.07.1,
    octave 5.1.0, openjdk 11.28, python 3.7.0, ferruxe 1.34.0, r 3.6.0,
    sbcl 1.5.1, shepherd 0.6.0, xfce 4.12.1 e xorg-server 1.20.4;

  • Xestor de servizos de GNU Shepherd actualizado á versión 0.6, que implementa o modo de servizo único, no que o servizo está marcado como detido inmediatamente despois dun lanzamento exitoso, que pode ser necesario para iniciar un traballo único antes que outros servizos, por exemplo, para realizar a limpeza ou a inicialización;
  • Engadíronse os alias de "instalar", "eliminar", "actualizar" e "buscar" típicos doutros xestores de paquetes ao comando "paquete guix". Para buscar un paquete, pode usar o comando "guix search", para instalar "guix install" e actualizar "guix pull" e "guix upgrade";
  • Engadiuse un indicador de progreso ao xestor de paquetes e destacaba as mensaxes de diagnóstico con cores. Por defecto, a maioría dos comandos execútanse agora sen verbosidade, que se activa mediante unha opción separada "-v" (--verbosidade);
  • Novo comando "guix system delete-generations" e opcións "guix pack --save-provenance", "guix pull --news", "guix environment --preserve", "guix gc --list-roots", "guix gc --delete-generations", "guix weather -coverage";
  • Engadíronse novas opcións conversións de paquetes "--with-git-url" e "--with-branch";
  • A distribución engadiu campos de configuración "keyboard-layout" para definir a disposición do teclado, "xorg-configuration" para configurar o servidor X, "label" para etiquetar a sección e "essential-services" para definir servizos básicos;
  • Engadiuse o comando "guix pack -RR" para crear tarballs executables reubicables que se poden executar en relación tanto ás rutas do espazo de nomes de usuario como a PRORoot;
  • 'guix pull' proporciona unha caché de paquetes para acelerar as buscas de nomes e incorpora o paquete 'glibc-utf8-locales';
  • Asegurouse a repetibilidade total (bit por bit) das imaxes ISO xeradas polo comando "guix system";
  • GDM úsase como xestor de inicio de sesión en lugar de SLiM;
  • O soporte para construír Guix usando Guile 2.0 foi eliminado.

Recordemos que o xestor de paquetes GNU Guix baséase nos desenvolvementos do proxecto Nix e ademais das funcións típicas de xestión de paquetes, admite funcións como actualizacións transaccionais, a capacidade de retroceder as actualizacións, traballar sen obter privilexios de superusuario, soporte para perfís asociados a usuarios individuais, a posibilidade de instalar varias versións dun programa simultáneamente, ferramentas de recollida de lixo (identificando e eliminando versións non utilizadas de paquetes). Para definir scripts de compilación de aplicacións e regras de empaquetado, proponse utilizar unha linguaxe de dominio específico de alto nivel e compoñentes da API de Guile Scheme que lle permitan realizar todas as operacións de xestión de paquetes na linguaxe de programación funcional Scheme.

Admítese a capacidade de usar paquetes preparados para o xestor de paquetes Nix e colocados no repositorio
Nixpkgs. Ademais das operacións de paquetes, pode crear scripts para xestionar a configuración da aplicación. Cando se constrúe un paquete, todas as dependencias asociadas descárganse e constrúense automaticamente. É posible tanto descargar paquetes binarios preparados desde o repositorio, como construír desde a fonte con todas as dependencias. Ferramentas implementadas para manter actualizadas as versións dos programas instalados organizando a instalación de actualizacións desde un repositorio externo.

O contorno de compilación para paquetes está formado como un contedor que contén todos os compoñentes necesarios para o funcionamento das aplicacións, o que permite crear un conxunto de paquetes que poden funcionar sen ter en conta a composición do entorno do sistema base da distribución, no que Guix úsase como complemento. As dependencias pódense determinar entre paquetes Guix escaneando os identificadores hash no directorio de paquetes instalados para atopar a presenza de dependencias xa instaladas. Os paquetes instálanse nunha árbore de directorios ou subdirectorio separado no directorio do usuario, o que lle permite coexistir con outros xestores de paquetes e proporcionar soporte para unha ampla gama de distribucións existentes. Por exemplo, un paquete instálase como /nix/store/f42d5878f3a0b426064a2b64a0c6f92-firefox-66.0.0/ onde "f42d58..." é o identificador único do paquete usado para controlar as dependencias.

A distribución inclúe só compoñentes gratuítos e inclúe un núcleo GNU Linux-Libre desposuído de elementos de firmware binarios non libres. Úsase GCC 8.3 para construír. O xestor de servizos úsase como sistema de inicialización GNU Shepherd (ex dmd) desenvolvido como alternativa a SysV-init con soporte para dependencias. O daemon de control e as utilidades Shepherd están escritas na linguaxe Guile (unha das implementacións da linguaxe Scheme), que tamén se usa para definir os parámetros de inicio do servizo. A imaxe base admite o modo consola, pero para instalar preparado 9714 paquetes preempaquetados, incluíndo compoñentes de pila de gráficos baseados en X.Org, xestores de ventás dwm e ratpoison, o escritorio Xfce e unha selección de aplicacións gráficas.

Fonte: opennet.ru

Engadir un comentario