The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

22.05.2017 21:54  Опубликован пакетный менеджер GNU Guix 0.13 и дистрибутив GuixSD на его основе

Проект GNU представил выпуск пакетного менеджера GNU Guix 0.13 и построенного на его основе дистрибутива GNU/Linux - GuixSD (Guix System Distribution). Допускается установка как в качестве обособленной ОС в системах виртуализации и на обычном оборудовании, так и запуск в уже установленных типовых окружениях GNU/Linux. Для загрузки сформированы образы для установки на USB Flash и использования в QEMU (156 Мб). Поддерживается работа на архитектурах i686, x86_64, armv7, aarch64 и mips64el.

Пакетный менеджер GNU Guix основан на наработках проекта Nix и кроме типичных функций управления пакетами поддерживает такие возможности, как выполнение транзакционных обновлений, возможность отката обновлений, работа без получения привилегий суперпользователя, поддержка привязанных к отдельным пользователям профилей, возможность одновременной установки нескольких версий одной программы, средства уборки мусора (выявление и удаление неиспользуемых версий пакетов). Для определения сценариев сборки приложений и правил формирования пакетов предлагается использовать специализированный высокоуровневый предметно-ориентированный язык и компоненты Guile Scheme API, позволяющие выполнять все операции по управлению пакетами на функциональном языке программирования Scheme.

Поддерживается возможность использования пакетов, подготовленных для пакетного менеджера Nix и размещённых в репозитории Nixpkgs. Кроме операций с пакетами возможно создание сценариев для управления конфигурацией приложений. При сборке пакета автоматически загружаются и собираются все связанные с ним зависимости. Возможна как загрузка готовых бинарных пакетов из репозитория, так и сборка из исходных текстов со всеми зависимостями. Реализованы средства для поддержания версий установленных программ в актуальном состоянии через организацию установки обновлений из внешнего репозитория.

Сборочное окружение для пакетов формируется в виде контейнера, содержащего все необходимые для работы приложений компоненты, что позволяет сформировать набор пакетов, способный работать без оглядки на состав базового системного окружения дистрибутива, в котором Guix используется в качестве надстройки. Между пакетами Guix возможно определение зависимостей, при этом для поиска наличия уже установленных зависимостей используется сканирование хэшей-идентификаторов в директории установленных пакетов. Пакеты устанавливаются в отдельное дерево директорий или поддиректорию в каталоге пользователя, что позволяет обеспечить его параллельное сосуществование с другими пакетными менеджерами и обеспечить поддержку широкого спектра существующих дистрибутивов. Например, пакет устанавливается как /nix/store/f42d69df5d8a0b526064a4e54a7c6f02-firefox-53.0.0/, где "f42d69..." является уникальным идентификатором пакета, используемым для контроля зависимостей.

Дистрибутив включает только свободные компоненты и поставляется с ядром GNU Linux-Libre 4.11, очищенным от несвободных элементов бинарных прошивок. Для сборки применяется GCC 7. В качестве системы инициализации используется сервисный менеджер GNU Shepherd (бывший dmd), развиваемый как альтернатива SysV-init с поддержкой зависимостей. Управляющий демон и утилиты Shepherd написаны на языке Guile (одна из реализаций языка Scheme), который также используется и для определения параметров запуска сервисов. Базовые образ поддерживает работу в консольном режиме, но для установки подготовлено более 5400 готовых пакетов, среди которых и компоненты графического стека на базе X.Org, оконные менеджеры dwm и ratpoison, а также ряд программ на базе библиотеки GTK+.

Основные новшества:

  • Добавлена поддержка архитектуры aarch64 (ARM64), но бинарные установочные архивы пока не формируются из-за неготовности сборочной инфраструктуры;
  • Прекращено формирование установочных сборок mips64el. Поддержка самой архитектуры пока сохранена, но останется ли она в дальнейшем будет зависеть от наличия заинтересованных разработчиков;
  • В сборки GuixSD добавлена поддержка загрузки на системах с UEFI и возможность установки на разделы с Btrfs;
  • В GuixSD обеспечена возможность запуска системных сервисов (фоновых процессов) в изолированных контейнерах, что позволяет защитить систему от возможных уязвимостей в данных сервисах;
  • По сравнению с прошлым выпуском добавлено 840 новых пакетов, в том числе сформированы пакеты с 0 A.D, freeciv, freedoom, alpine, alsa-plugins, cargo, cdrtools, ceph, freerdp, freetalk, neovim, scrypt, stunnel, unrar, xinetd;
  • Обновлены версии программ в 1220 пакетах, в том числе glibc 2.25, Linux-libre 4.11 и GCC 7.
  • Добавлены новые системные сервисы для Redis, Exim и Open vSwitch, значительно улучшен интерфейс сервиса Nginx;
  • Реализована новая команда "guix pack", предназначенная для создания бинарных пакетов;
  • В Guix обеспечена поддержка работы с использованием новой версии GNU Guile 2.2;
  • В команду "guix publish" добавлена опция "--cache", обеспечивающая режим кэширования для ускорения доставки бинарных сборок большому числу пользователей;
  • Решена большая порция проблем с обеспечением повторяемых сборок пакетов.


  1. Главная ссылка к новости (http://www.gnu.org/software/gu...)
  2. OpenNews: Опубликован пакетный менеджер GNU Guix 0.12 и дистрибутив GuixSD на его основе
  3. OpenNews: Фонд СПО признал ProteanOS полностью свободным дистрибутивом
  4. OpenNews: Фонд СПО признал Guix полностью свободным дистрибутивом
Лицензия: CC-BY
Тип: Программы
Ключевые слова: guix
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, prgchip (?), 22:05, 22/05/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +1 +/
    "Для определения сценариев сборки приложений и правил формирования пакетов предлагается использовать специализированный высокоуровневый предметно-ориентированный язык и компоненты Guile Scheme API, позволяющие выполнять все операции по управлению пакетами на функциональном языке программирования Scheme."
    Я правильно понимаю что для оптимизации ПО под железо потребуется знание Scheme вместо USE флагов как например в Gentoo?
     
     
  • 2.2, Аноним (-), 23:02, 22/05/2017 [^] [ответить]    [к модератору]
  • +/
    и то, и другое.
     
  • 1.3, Аноним (-), 23:20, 22/05/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Я честно не пойму зачем оно когда есть apt, dpkg и dh-утилиты. Что может потребоватся такое чего сделать с вышеназванным набором утилит?
     
     
  • 2.4, Аноним (-), 23:20, 22/05/2017 [^] [ответить]    [к модератору]
  • +/
    чего НЕ сделать*
     
     
  • 3.18, Andrey Mitrofanov (?), 08:36, 23/05/2017 [^] [ответить]    [к модератору]
  • +/
    > чего НЕ сделать*

    Вот тут: https://nixos.org/~eelco/pubs/phd-thesis.pdf
    Про Guile, GNU, Столмана - сам.

     
     
  • 4.37, Аноним (-), 23:16, 23/05/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    Обзорно глянул - невероятно полезная ссылка. Очень интересну, буду читать. Спасибо!
     
  • 2.8, JL2001 (ok), 00:00, 23/05/2017 [^] [ответить]     [к модератору]  
  • +4 +/
    несколько версий фокса, вайна сразу несколько версий иксов, месы и дров сразу ... весь текст скрыт [показать]
     
     
  • 3.39, Аноним (-), 23:18, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    С lxc не будет ли надежнее или может все это под kvm? В чем здесь преимущество Guix?
     
  • 2.9, Аноним (-), 00:52, 23/05/2017 [^] [ответить]     [к модератору]  
  • +/
    Гикс обеспечивает транзакционное детерминированное и воспроизводимое построение ... весь текст скрыт [показать]
     
     
  • 3.12, Дай два (?), 02:40, 23/05/2017 [^] [ответить]    [к модератору]  
  • –8 +/
    >> Например, пакет устанавливается как /nix/store/f42d69df5d8a0b526064a4e54a7c6f02-firefox-53.0.0/

    Красиво, говоришь? Типа наподобие C:\$SETUP$\f42d69...

     
  • 3.40, Аноним (-), 23:20, 23/05/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    мне не все прозрачно в этих терминах, где можно почитать о терминах вот тут по... весь текст скрыт [показать]
     
     
  • 4.45, Andrey Mitrofanov (?), 10:52, 24/05/2017 [^] [ответить]     [к модератору]  
  • +/
    Слайды полистай https www gnu org software guix help talks Или phd-thesis pd... весь текст скрыт [показать]
     
  • 2.20, Аноним_oyc (?), 09:09, 23/05/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Устанавливать разные версии одной и той же программы, или устанавливать пакеты всё в одном, типа, как самодостаточные.
     
  • 2.23, анонимус (??), 09:51, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    Апт невероятно убог и тормознут.
     
     
  • 3.31, Guix (ok), 14:20, 23/05/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    > Апт невероятно убог и тормознут.

    Это ты ещё DNF не видел. Апт по сравнению с ним ещё ничего.

     
  • 3.41, Аноним (-), 23:22, 23/05/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    Не знаю в чем он убог, а тормозит при построении и перестроении списка пакетов ч... весь текст скрыт [показать]
     
  • 1.6, ALex_hha (ok), 23:43, 22/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > выполнение транзакционных обновлений

    это пожалуй единственное, чего не хватает в apt/rpm(yum)

     
     
  • 2.24, анонимус (??), 09:52, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    Аптом уже можно ставить несколько версий одного пакета?
     
     
  • 3.27, PnDx (ok), 11:46, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    Да, если пакет собран в /opt/pkg/version (или /usr/local/pkg/version).
    См. как постгресники это делают.
    * И rpm'ом аналогично.
     
     
  • 4.32, Guix (ok), 14:21, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    > Да, если пакет собран в /opt/pkg/version (или /usr/local/pkg/version).

    Но все же понимают, что это _костыль_.

     
     
  • 5.44, rpm (?), 07:17, 24/05/2017 [^] [ответить]    [к модератору]  
  • +/
    Нет, это грамматная сборка пакетов
     
     
  • 6.50, annual slayer (?), 16:36, 09/06/2017 [^] [ответить]    [к модератору]  
  • +/
    более правильного слова для такой сборки и не подобрать
     
  • 1.7, JL2001 (ok), 23:58, 22/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    >В GuixSD обеспечена возможность запуска системных сервисов (фоновых процессов) в изолированных контейнерах, что позволяет защитить систему от возможных уязвимостей в данных сервисах

    молодцы что в дефолтную систему вписали, ещё б гуишные добавить типо скайпа (аль фотошопа)

     
     
  • 2.21, Аноним_oyc (?), 09:12, 23/05/2017 [^] [ответить]    [к модератору]  
  • +2 +/
    Ага, щаз тебе FSF добавит Skype, жди ;)
     
  • 1.10, Аноним (-), 01:13, 23/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Это Proof ofConcept или юзабельно для личного использования?
     
  • 1.11, Singularity (ok), 01:25, 23/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    В UEFI уже может?
     
     
  • 2.33, Guix (ok), 14:22, 23/05/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    >В UEFI уже может?

    -->
    >В сборки GuixSD добавлена поддержка загрузки на системах с UEFI

     
  • 1.13, Gotta Go Fast (?), 03:57, 23/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –8 +/
    >Добавлена поддержка архитектуры aarch64

    в то время, как большинство дистров уже выкинуло арм. Лол

     
     
  • 2.16, EuPhobos (ok), 07:26, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    >>Добавлена поддержка архитектуры aarch64
    > в то время, как большинство дистров уже выкинуло арм. Лол

    Многие дистрибутивы [u][b]ещё не подсели[/b][/u] на 64битный арм. Ты из будущего что-ль?

     
  • 1.14, rob pike (?), 04:38, 23/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Слишком красиво, не взлетит.
    Пример Darcs никого ничему не научил.
     
  • 1.15, KOT040188 (ok), 06:23, 23/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А почему не GNU/Hurd?
     
     
  • 2.22, Аноним (-), 09:18, 23/05/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    GNU/Hurd Мертворожденное ядро которое не будет использовано никогда!
     
  • 1.17, Аноним (-), 07:39, 23/05/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Пытался использовать Nix для запуска некоторых приложений, типа Calibre - гуя вы... весь текст скрыт [показать]
     
     
  • 2.19, Аноним (-), 08:54, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    хмм да у меня там skypeforlinux затесался...
     
  • 2.26, leo (??), 10:13, 23/05/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    отсуствием гемороя.
    если nix файл хорошо написан, ты получишь то, что хочешь очень лекго. например для своего проекта я собираю все библиотеки одним компилятором, собираю статический буст с fPIC и т.д. это все как бы одной строкой.
     
  • 1.25, leo (??), 10:09, 23/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    так и не понял чем эта штука отличается от оригинального nix. только тем что Scheme юзает, а не nix?
     
     
  • 2.28, Andrey Mitrofanov (?), 12:13, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    > так и не понял чем эта штука отличается от оригинального nix. только
    > тем что Scheme юзает, а не nix?

    Пакеты на scheme пишут, а не на доморощенном nix lang. Говорят, с эскейпами вложенных шелл-сниппетов проще (=>всё переписано на scheme~), "полный lisp" мощнее доморощенного DSL с шелом в качестве низкоуровневого рантайма.

    Nix-демона и guix использует, но свой форк. Так что не совсем "не nix". Фактически "там внизу" пакеты транслируются guix-ом в derivation-ы -- входные коды nix, описывающие сборку.

    А ещё  s,/nix/store/,/gnu/store/.  И я совсем не уверен про совместное использование, как там наверху, в новости (пакеты NixOS => GuixSD?) -- .../store/ и демоны должны, вроде, быть отдельными и не пересекающимся, если я не вру. Хотя люди и ставят Guix [P.M., не ...SD] внутри NixOS (дистрибутива, базовой ОС), насколько там возможно разделение демона и стора, я не знаю. Может, guix-овые .drv-ешки собирают и ставят nis[OS]-овым демоном, не используя свой "родной" (и теряя бинарную совместимость с gnu субститьютами)?...

     
     
  • 3.30, ILoveIslam (?), 13:56, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    Вообще смысла особого в nixlang нет, ничего нового он не несет, такое ощущение что он появился во многом потому что у кое-кого в phd тезисе глав не хватало.
     
  • 3.36, leo (??), 17:16, 23/05/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    спасибо.

    на сколько я понял, если хеши они расчитывают одинаково (а это скорее всего так, если guix деревацию делает, ведь nix потом по этому хешь высчитает), то можно и совместно использовать.
    у меня как-то не было проблемы написать shell, там две кавычки ставишь, такое нигде по коду не встретиться. а вот в скобках боюсь запутаться.


    я не пробовал, но nix вроде можно настроить и без systemd (вроде встречал нужные деревации).

     
  • 3.43, Аноним (-), 06:54, 24/05/2017 [^] [ответить]     [к модератору]  
  • –3 +/
    Описание пакетов в формате deb может понять любой юзер даже не программист, а во... весь текст скрыт [показать]
     
     
  • 4.47, Andrey Mitrofanov (?), 11:40, 24/05/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    > Описание пакетов в формате deb может понять любой юзер даже не программист,
    > а вот написанные на всяких языках программирования лиспах только программер значит

    Во-первых, вы передёргиваете, мусье шулер, с "понять" на "написание" и с "описание" (descrition: что ли?) на "на лисках". Во-вторых, "только программер" -- это с дипломом вуза, да? Хе... враньё. Себе-то хоть не врёте, или вами верите в написанное?

    > собирать, сопровождать пакеты смогут только они. Я к чему веду, к

    Отговорки. Вплоть до "п4ж и дезинформация."

    > тому что для обычного пользователя guix намного хуже труднее для понимания.
    > С этим вашим guix'ом уже не покопаешься в системе.

    Отлично. Вычёркиваю, можете не приходить.  Надо _меньше_ пользователей.

    >популярность, прозрачность и демократичность linux резко понизится.

    Великолепно же! Микрософты, ораклы, редхаты и торвальдсы получат заслуженное? Скорее бы.

     
  • 2.29, Andrey Mitrofanov (?), 12:18, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    > так и не понял чем эта штука отличается от оригинального nix.

    А, да, пока не забыл: и проект GNU, в нём linux-libre, по скрижалям FSF --- GPLv3+, FSDG.

     
  • 2.34, Guix (ok), 14:41, 23/05/2017 [^] [ответить]    [к модератору]  
  • +/
    > так и не понял чем эта штука отличается от оригинального nix. только тем что Scheme юзает, а не nix?

    Помимо этого в GuixSD нет systemd:
    >В качестве системы инициализации используется сервисный менеджер GNU Shepherd (бывший dmd), развиваемый как альтернатива SysV-init с поддержкой зависимостей. Управляющий демон и утилиты Shepherd написаны на языке Guile (одна из реализаций языка Scheme)

     
  • 1.35, Guix (ok), 14:52, 23/05/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • –3 +/
    Вот это годно Ещё бы ядро с grsecurity в репу завезли ... весь текст скрыт [показать]
     
     
  • 2.49, Andrey Mitrofanov (?), 13:11, 27/05/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    >>В GuixSD обеспечена возможность запуска системных сервисов (фоновых процессов) в изолированных контейнерах, что позволяет защитить
    > Вот это годно.
    > Ещё бы ядро с grsecurity в репу завезли.

    Ээээ. Как вы себе это видите -- когда у одних linux-libre по скрижалям FSDG, а у других "прекращают открытую публикацию патчей"?

     
  • 1.42, Аноним (-), 00:52, 24/05/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    В Debian когда будет?
     
     
  • 2.46, Andrey Mitrofanov (?), 11:28, 24/05/2017 [^] [ответить]    [к модератору]  
  • +/
    > В Debian когда будет?

    В официальном Debian-е, да??

    Гм... От "когда-нибудь, может быть"
       https://bugs.debian.org/850644
          https://github.com/antono/guix-debian/tree/master/debian
       https://github.com/detrout/debian-guix
          https://lists.gnu.org/archive/html/guix-devel/2016-02/msg01121.html

    до "никогда":

    [I]"However, for good reasons (maybe too long to go into here?) Guix does not follow the Filesystem Heirarchy Standard, and for that reason alone will probably not be installed in the main repositories of Debian at least soon."[/I] --https://unix.stackexchange.com/questions/290423/can-guix-packages-be-delivered

     
     
  • 3.48, Аноним (-), 19:15, 25/05/2017 [^] [ответить]    [к модератору]  
  • +/
    А чем в целом ставить и подготавливать пакеты?
    А то что-то очень уж много возни с штатными средствами.
    На сколько я помню даже rpm и тот проще делать чем deb.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor