Оглавление
- 1 GNU Guix (графический интерфейс пользователя)
- 1.1 Описание GNU Guix
- 1.2 Особенности и преимущества
- 1.3 Разработка и использование
- 1.4 Пакеты и зависимости
- 1.5 Профили и окружение
- 1.6 Упаковка и сторонние каналы
- 1.7 Система Guix
- 1.8 Виртуальные сервисы Shepherd
- 1.9 Программирование и управление
- 1.10 Гибкость и переопределение сервисов
- 1.11 История и развитие
- 1.12 Прием и документация
- 1.13 Воспроизводимые научные рабочие процессы
- 1.14 История проекта
- 1.15 Планы и обновления
- 1.16 Связанные проекты и ресурсы
- 1.17 Полный текст статьи:
- 2 GNU Guix
GNU Guix (графический интерфейс пользователя)
-
Описание GNU Guix
- Функциональный кроссплатформенный менеджер пакетов
- Основан на Nix package manager
- Использует криптографические хэши для управления зависимостями
-
Особенности и преимущества
- Чисто функциональная модель развертывания
- Решение проблемы “ада зависимостей”
- Возможность сосуществования нескольких версий одного и того же ПО
- Поддержка научных вычислений
-
Разработка и использование
- Тесная связь с системой GNU Guix
- Использование ядра Linux-libre и системы инициализации GNU Shepherd
- Поддержка различных архитектур процессоров
-
Пакеты и зависимости
- Определение пакетов с помощью Guile Scheme
- Автоматическое отслеживание зависимостей
- Возможность отката обновлений
-
Профили и окружение
- Использование поколений профилей для управления установленными пакетами
- Возможность создания нескольких профилей пользователей
- Оболочка Guix для разработки программного обеспечения
-
Упаковка и сторонние каналы
- Возможность упаковки элементов хранилища в различные форматы
- Поддержка сторонних каналов для установки несвободного ПО
-
Система Guix
- Бесплатный дистрибутив Linux на базе Guix
- Декларативная конфигурация операционной системы
- Использование системы инициализации GNU Shepherd
-
Виртуальные сервисы Shepherd
- Динамическая диспетчеризация по классу связанных сервисных объектов
- Представление пользовательского пространства в виде направленного ациклического графа
- Системная служба отвечает за ранние фазы загрузки и инициализации
-
Программирование и управление
- Системный администратор может программировать с помощью Guile
- Управление пользовательскими профилями непривилегированных демонов и служб
- Сервисы и конфигурация хранятся в виде объектно-ориентированного кода схемы
-
Гибкость и переопределение сервисов
- Произвольные новые сервисы могут быть гибко объявлены
- Существующие сервисы могут быть переопределены с помощью GOOPS
- Динамическая перепись служб при создании экземпляра
-
История и развитие
- Изначально разработан для GNU Hurd, позже принят системой Guix
- Откат системы с помощью команды guix package –откат
- Функциональный менеджер пакетов Guix и система генерации для хранения истории конфигураций
-
Прием и документация
- Джесси Смит из DistroWatch Weekly отметил ограниченную аппаратную поддержку и документацию
- Документация расширена и улучшена благодаря видеороликам и кулинарной книге
-
Воспроизводимые научные рабочие процессы
- Guix предлагает способ совместного использования воспроизводимой вычислительной среды
- Рецепт для научного программного обеспечения предоставляет информацию для однозначного описания дерева зависимостей
- Необходимость включения сбора и обработки данных в рабочий процесс
-
История проекта
- Запущен в июне 2012 года Людовиком Куртесом
- Первый выпуск GNU Guix в ноябре 2012 года
- Портирован на GNU Hurd в августе 2015 года
-
Планы и обновления
- Проект не имеет фиксированного графика выхода
- Планируется выпуск версии 1.5.0 через 20 месяцев после версии 1.4.0
-
Связанные проекты и ресурсы
- Debian GNU/Hurd
- NixOS, вдохновившая GNU Guix
- Сравнение дистрибутивов Linux
- Рекомендации и внешние ссылки