Distribución del sistema Guix

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 23 de febrero de 2022; las comprobaciones requieren 2 ediciones .
Sistema GNU Guix
Archivo:GNU Guix System logo.svg

Sistema Guix con Xfce , y con GNU IceCat y GNU Emacs incluidos
Desarrollador Proyecto GNU [1] [2]
familia de sistemas operativos Sistema operativo similar a Unix
Fuente abierto
ultima versión 1.3.0 [3]  (11 de mayo de 2021 ) ( 2021-05-11 )
Administradores de paquetes Guix GNU
Plataformas compatibles x86_64, i686, brazo [4]
tipo de núcleo Monolítico : Linux-libre (operativo)
Microkernel : GNU Hurd (en desarrollo)
Interfaz GNOME [5] , Xfce [5] , Enlightenment [5] y LXDE [5]
Licencia GPL
Estado en desarrollo
Sitio web guix.gnu.org
 Archivos multimedia en Wikimedia Commons

GNU Guix System es una distribución de Linux creada con el administrador de paquetes GNU Guix [6] [7] . Utiliza el kernel Linux-libre con soporte para elementos GNU Hurd [8] . El 3 de febrero de 2015 , la distribución se añadió a la lista de distribuciones gratuitas de GNU+Linux de la Free Software Foundation [9] ..

Características

GNU Guix

GuixSD usa GNU Guix , un administrador de paquetes funcional, y un administrador de configuración del sistema basado en el administrador de paquetes Nix , usando GNU Guile , que es una implementación del lenguaje de programación Scheme . Todas las definiciones de paquetes, así como toda la configuración del sistema, están escritas en el lenguaje específico de dominio Guile Scheme [10] .

Pastor GNU

GuixSD utiliza GNU Daemon Shepherd como su sistema de inicio , que se desarrolla junto con Guix y también está escrito en Guile . Anteriormente se llamaba "dmd", que significa "Daemon management Daemons" o "Daemons-management Daemon", pero el nombre se ha cambiado para evitar conflictos con el compilador Digital Mars D [11] .

Shepherd expone la funcionalidad del espacio de usuario de forma asincrónica como servicios, que para Shepherd son funciones genéricas y tipos de datos de objetos . Shepherd utiliza su exportación para extender el sistema operativo base de cierta manera. A diferencia de systemd , el pastor de procesos del espacio de usuario se ejecuta como un usuario. En el núcleo del modelo de inicialización del espacio de usuario de Shepherd se encuentra el concepto de extensión, una forma de componibilidad en la que los servicios están diseñados para superponerse a otros servicios, aumentándolos con comportamientos más complejos o especializados según se desee. [12] Esto expresa las relaciones de dependencia basadas en instancias que se encuentran en muchos sistemas de aprovisionamiento modernos, [13] lo que hace que el sistema sea modular y al mismo tiempo permite que los servicios interactúen entre sí de manera variable y arbitraria.

Shepherd también proporciona los llamados servicios virtuales , que permiten el envío dinámico a través de una clase de objetos de servicio relacionados, como todos aquellos objetos que crean una implementación de servidor de correo para un sistema [14] . Un sistema gestionado a través del demonio Shepherd puede representar su espacio de usuario como un gráfico acíclico dirigido , y el "servicio del sistema" responsable de las primeras fases de inicio e inicio es tanto su raíz como todos los servicios inicializados posteriores como extensiones de la funcionalidad del servicio del sistema. , ya sea directamente oa través de otros servicios [12] [15] .

GNU Shepherd está escrito y configurado utilizando Guile Scheme y está diseñado para permitir un alto grado de programación del administrador del sistema, pero también se puede usar para administrar perfiles de usuarios individuales para demonios y servicios sin privilegios. [16] . Sus servicios y configuración se almacenan de manera uniforme como código Scheme orientado a objetos , y aunque se proporciona un conjunto básico de servicios a través del sistema base GuixSD [17] , se pueden declarar nuevos servicios arbitrarios de manera flexible. Y a través del sistema de objetos Guile (GOOPS), los servicios existentes pueden anularse a discreción del usuario al pedirle a Shepherd que cambie dinámicamente los servicios en las formas especificadas cuando se instancian [18] [19] .

GNU Shepherd se desarrolló originalmente para trabajar con GNU Hurd y luego se usó en GuixSD [20] .

Véase también

Notas

  1. Acerca de - Sistema Guix . Consultado el 27 de abril de 2022. Archivado desde el original el 27 de abril de 2022.
  2. Preguntas sobre GNU/Linux - Proyecto GNU - Free Software Foundation . Consultado el 7 de julio de 2018. Archivado desde el original el 7 de septiembre de 2013.
  3. Lanzamiento de GNU Guix 1.3.0 . Consultado el 13 de mayo de 2021. Archivado desde el original el 13 de mayo de 2021.
  4. Migración de GuixSD a ARMv7 - 2017 - Blog - GuixSD . Consultado el 7 de julio de 2018. Archivado desde el original el 25 de diciembre de 2017.
  5. 1 2 3 4 https://guix.gnu.org/ru/manual/devel/en/guix.html#Limitaciones
  6. Distribuciones gratuitas de GNU/Linux - Proyecto GNU - Free Software Foundation . Consultado el 7 de julio de 2018. Archivado desde el original el 16 de diciembre de 2014.
  7. Guix: un nuevo administrador de paquetes y distribución GNU - Phoronix . Consultado el 7 de julio de 2018. Archivado desde el original el 2 de febrero de 2015.
  8. Lanzamiento de GNU Guix y GuixSD 0.12.0 . Consultado el 7 de julio de 2018. Archivado desde el original el 1 de agosto de 2020.
  9. La FSF agrega Guix System Distribution a la lista de distribuciones respaldadas (Free Software Foundation) que trabajan juntas para el software libre . Consultado el 7 de julio de 2018. Archivado desde el original el 3 de febrero de 2015.
  10. Interfaz de programación (Manual de referencia de GNU Guix) . Consultado el 7 de julio de 2018. Archivado desde el original el 2 de junio de 2019.
  11. Nuevo nombre de dmd . Consultado el 7 de julio de 2018. Archivado desde el original el 19 de septiembre de 2019.
  12. 1 2 Composición del servicio (Manual de referencia de GNU Guix) . Consultado el 7 de julio de 2018. Archivado desde el original el 7 de julio de 2018.
  13. systemd: Unidades de dependencia y orden - Fedora Magazine . Consultado el 7 de julio de 2018. Archivado desde el original el 1 de agosto de 2020.
  14. Jump Start (El manual GNU Shepherd) . Consultado el 7 de julio de 2018. Archivado desde el original el 1 de agosto de 2020.
  15. Shepherd Services (Manual de referencia de GNU Guix) . Consultado el 7 de julio de 2018. Archivado desde el original el 7 de julio de 2018.
  16. Introducción (El manual de GNU Shepherd) . Consultado el 7 de julio de 2018. Archivado desde el original el 1 de agosto de 2020.
  17. Servicios (Manual de referencia de GNU Guix) . Consultado el 7 de julio de 2018. Archivado desde el original el 7 de julio de 2018.
  18. Tipos de servicios y servicios (Manual de referencia de GNU Guix) . Consultado el 7 de julio de 2018. Archivado desde el original el 7 de julio de 2018.
  19. Uso del sistema de configuración (Manual de referencia de GNU Guix) . Consultado el 7 de julio de 2018. Archivado desde el original el 7 de julio de 2018.
  20. The Shepherd-Proyecto GNU-Free Software Foundation . Consultado el 7 de julio de 2018. Archivado desde el original el 12 de febrero de 2016.

Enlaces