Ычан: [d | b / bro / hr / l / m / mi / mu / o / ph / r / s / sci / tran / tu / tv / vg / x | au / tr | a / aa / c / fi / jp / rm / tan / to / vn / vo]
[Назад]
Ответ в нить
Имя
Animapcha image [@] [?]
Тема   ( ответ в 25316)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаются файлы типов 7Z, BZ, BZ2, GIF, GZ, JPG, MO, MP3, MP4, OGG, OGV, PDF, PNG, PSD, RAR, SVG, SWF, TXT, WEBM, WEBP, XCF, ZIP размером до 5000 кБ.
  • Ныне 3721 unique user posts. Посмотреть каталог
  • Максимальное количество бампов нити: 500
test-pilot.png - (145.10KB, 1024×819)
25316
No. 25316    
GNU GUIX (произносится гикс /ɡiːks/) — функциональный пакетный менеджер и операционная система, разработанные Ludovic Courtès. Отличительной особенностью является создание полностью воспроизводимых билдов и декларативное описание. Guix можно поставить на существующий дистрибутив GNU/Linux или в качестве отдельной системы на базе Linux или GNU Hurd. Раньше существовало разделение менеджера пакетов Guix и операционной системы GuixSD.

Определения пакетов описываются на диалекте языка Scheme – GNU/Guile. Большая часть исходников написана на нём же. Система изначально была основана на Nix. Отличиями от Nix(OS) являются язык для описания пакетов и сервисов, система инициализации (GNU Shepherd), использование ядра Linux-Libre (Linux без блобов) и отсутствие проприетарных пакетов.

Чем интересен Guix: https://habr.com/ru/post/436938/

GNU Guix (из коробки) не имеет проприетарного firmware. Потому при переходе на эту систему надо учитывать, что возможно wifi адаптер, gpu и другие компоненты системы могут не работать полностью или частично.

Список свободных wifi адаптеров:
https://gist.github.com/sirikid/2817f36d67d1480a428cbf33b220cfcc

Научные статьи о Guix:
Functional Package Management with Guix
Reproducible and User-Controlled Software Environments in HPC with Guix
Code Staging in GNU Guix

Научные статьи о Nix:
The Purely Functional SoftwareDeployment Model

Сайт проекта: https://guix.gnu.org/ru
Документация: https://guix.gnu.org/manual/ru/html_node/
Cookbook: https://guix.gnu.org/cookbook/en/guix-cookbook.html
Шпаргалка: https://guix.gnu.org/guix-refcard.pdf
Видео-туториалы: https://guix.gnu.org/videos/
Поиск пакетов: https://hpc.guix.info/browse
Баг-трекер: https://issues.guix.gnu.org

Рекомендуется к установке (поиск пакетов, сервисов, repl, управление поколениями и т.д.):
Emacs интерфейс guix-emacs: https://emacs-guix.gitlab.io/website/manual/latest/emacs-guix.html

Доклады:
https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/talks
FOSDEM 2020: https://t.me/gnu_guix_ru/2993
Guix Days 2020: https://xana.lepiller.eu/guix-days-2020/

Мод guix для emacs: https://emacs-guix.gitlab.io/website/manual/latest/emacs-guix.html

Скачать Guix: https://guix.gnu.org/download/
Доступные архитектуры пакетного менеджера: i686, x86_64, ARMv7, AArch64
Доступные архитектуры системы: i686, x86_64

Исходный код: https://git.savannah.gnu.org/cgit/guix.git/

Примеры конфигураций: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/system/examples

Пакетный менеджер Guix в дистрибутивах:
Debian: https://packages.debian.org/experimental/guix
Раньше были пакеты для арча и генту, но были удалены

Сайт GNU Guile: https://www.gnu.org/software/guile/
Документация GNU Guile: https://www.gnu.org/software/guile/manual/html_node/

Guix может установить недостающие пакеты, если подключить канал с нужными описаниями пакетов. Подробнее: https://guix.gnu.org/manual/en/html_node/Channels.html

Публичные каналы:
Где искать помощь?
Посмотреть архив списков рассылки: https://lists.gnu.org/archive/html/help-guix/
Если там нет, то можно самому задать вопрос, отправив письмо на help-guix@gnu.org.

Существует irc канал #guix на сервере Freenode.

Также можно спросить здесь или в англоязычных группе telegram: https://t.me/guixsdgeneral

Как создать пакет:
https://guix.gnu.org/blog/2018/a-packaging-tutorial-for-guix/

Как "закрепить" версии пакетов:
https://guix.gnu.org/manual/en/html_node/Inferiors.html

Как выводить логи:
Флаг -v или --verbosity со значением от 0 до 2 для пользователя.
Например guix build hello -v 2

Флаг --debug со значением 0-5 для логов билдера guix'а для разработчика.
Например guix build hello --debug=5

Как контрибьютить?
https://github.com/pjotrp/guix-notes/blob/master/HACKING.org
  1. описано в документации.
Перевод проекта на русский язык:
https://translate.fedoraproject.org/projects/guix/guix/ru/
а также:
https://translationproject.org/domain/guix.html
https://translationproject.org/domain/guix-manual.html
Развернуть все изображения
No. 25322    
>>25316
И при чём тут разработка?
No. 25324    
>>25322
Предлагаешь в /b/ это обсуждать?
No. 25343    
>On the practical level, Guix provides pre-compiled packages which can be a huge time-saver compared to Gentoo
О минусах тактически умолчено

>Portage does not let you configure features that were not thought of in advance by the packager
>Conversely, Guix gives you full customization for everything, albeit with a bit more Scheme code
То есть написать ебилд и написать схемовый код - 2 большие разницы, в которой написание арбитрарного костыля лучше компонента с абстрактным EAPI?

>Moreover, Portage suffer from the same aforementioned issue with the lack of proper support for multiple versions. Indeed, USE flags significantly increase the magnitude of the issue
Как относятся флаги к версиям?
О слотах автор не знает?

Конечно с лиспами, хурдом и фсф интереснее никсоса, но такие статьи только отталкивают и все заявленные ключевые фишки кажутся оторванными от реального мира реализации
No. 25344    
Да кому нужна вся эта хрень. Нужен максимально простой стек, чтобы в облако добавить и контейнеры запускать.
No. 25421    
>>25343

>О минусах тактически умолчено
Это же не детальный анализ что бы купить гентушников.

>То есть написать ебилд и написать схемовый код - 2 большие разницы, в которой написание арбитрарного костыля лучше компонента с абстрактным EAPI?
Декларативно описывать зависимости на полноценном языке программирования > всё остальное.

>Как относятся флаги к версиям?
>О слотах автор не знает?
Ну, не у всех версий одни и теже флаги могут быть. Лично я о слотах ничего не знаю.

Что ты хочешь узнать о guix?
No. 25700    
Пробовал пользоваться Guix, но не осилил.

Проблема была в нерабочем WiFi модуле и в том что я пытался настроить OpenBox не разу им не пользовавшись.

После этого поставил NixOS и с ней всё пошло куда бодрее. Ставил версию 20.09 и обновился до 21.05. Но после обновления ноутбук стал работать хуже и я решил попробовать что-нибудь другое (Artix если интересно).

Ещё разобраться в Nix мне было куда проще чем в Scheme. Может быть потому что по Nix документация была сразу под рукой, а в Guix подразумевается что вы уже знаете Scheme или пойдёте его учить по другим источникам.

К тому же NixOS имеет прекрасную документацию по всем настройкам.

Или может быть я просто дурачок.

Идея лежащая за этими двумя проектами очень интересная, буду следить за развитием.
No. 25703    
>>25700

>Пробовал пользоваться Guix, но не осилил. Проблема была в нерабочем
>WiFi модуле и в том что я пытался настроить OpenBox ни разу им не
>пользовавшись.

Аналогично, но перед этим была практика установки дебиана без блобов,
так что знал, что придётся купить патч-корд для подключения сети по
ethernet (полезная кстати штука!). Но потом понял [как поставить ядро с
блобами] и опыт сразу улучшился, правда обновление базовой системы
вместе с ядром довольно напряжное по CPU и времени занятие, так что
именно базовую систему обновляю редко, а обновление пакетов получаю
через
guix pull' для получение обновлений именно пакетного менеджера,

не ОС, и после этого 
guix upgrade' собственно для получения новых
пакетов. И всё без sudo!

>После этого поставил NixOS и с ней всё пошло куда бодрее. Ставил версию
>20.09 и обновился до 21.05. Но после обновления ноутбук стал работать
>хуже и я решил попробовать что-нибудь другое (Artix если интересно).

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

>Ещё разобраться в Nix мне было куда проще чем в Scheme. Может быть
>потому что по Nix документация была сразу под рукой, а в Guix
>подразумевается что вы уже знаете Scheme или пойдёте его учить по
>другим источникам.

Нуу, довольно спорная тема. Даже очень.

>К тому же NixOS имеет прекрасную документацию по всем настройкам. Или
>может быть я просто дурачок.

Скорее всего ментальная система, сформированная опытом работы с отличным
от проекта GNU документацией, как-то препятствует поиску необходимой
информации. Перекладывание ответсвенности на "абстрактного себя-дурачка"
не приблизит исправление этой, на мой взгляд, проблемы. А может и
действительно (хотя замечаю это редко) в документации чего-то не хватает
или что-то не так. А может нужная часть инфомация не переведена, а
специфичные из предметной области дистрибутиво-строения термины не
совсем понятны через переводчики.

Ещё раз – не ищите абстрактную проблему, а пытайтесь понять глубже
какой результат нужен и какие препятствия возникают. Не исключено, что
императивный образ мышления о работе ОС сформировал такую позицию, что
проблема А решается инструментом Б при помощи инструкции Ц, хотя в
действительности даже проблемы А может не быть (маловероятно, например
разрешение завсимостей), или она решается не тем инструментом (чаще, к
примеру в guix сервисами управляет shepherd, а отложенными задачами
mcron, в отличие от монолита systemd), или она решается не теми
инструкциями (очень часто, я с первого раза все операции с пакетами
совершал через sudo, хотя это абсолютно не то как стоит использовать
функциональные пакетные менеджеры).

>Идея лежащая за этими двумя проектами очень интересная, буду следить за
>развитием.

А можно не только следить, но и использовать функциональный пакетный
менеджер вместе(!) с уже существующим системным (более того, можно
использовать guix на nixos, ровно как и наоборот, только как там с
сервисами я не знаю, но из всех знакомых с кем общался, говорят что опыт
положительный). Nix ставиться через [одну команду], guix есть в паре
дистрибутивов по типу [недавно вышедшего дебиана] и [некоторых других].

[как поставить ядро с блобами] https://willschenk.com/articles/2019/installing_guix_on_nuc/

[одну команду] https://nixos.org/download.html

[недавно вышедшего дебиана] https://packages.debian.org/stable/admin/guix

[некоторых других] https://repology.org/project/guix/versions
No. 25704    
>>25703

> Но потом понял [как поставить ядро с блобами]
> This command will take forever (around 1 hour) mainly because it’s compiling the linux kernel and other fun stuff.

Спасибо, но компилировать ядро я не согласен. Так как это займёт вечность, как указано выше.

> Перекладывание ответственности на "абстрактного себя-дурачка"

Возможно тогда повлияло стечение обстоятельств, лень читать огромный мануал и т.д и т.п. В NixOS сразу описаны настройки для конкретных программ "Чтобы сделать то-то и то-то надо заменить это на это". Возможно в мануале по Guix это всё тоже есть, но как я сказал выше я не осилил его до конца.

> использовать функциональный пакетный менеджер вместе(!) с уже существующим системным

Этот вариант я видел довольно часто. Устанавливаешь минимальный дистрибутив, а все пакеты потом накидываешь через Guix или Nix. Может быть позже тоже так сделаю.

> Пакет: guix (1.2.0-4)
> rec: systemd загрузчик системы и служб

Не очень нравится, что оно завязано на systemd или shepherd. В данный момент интересно попробовать что-то для меня новое, например openrc.
No. 25709    
maxresdefault.jpg - (57.05KB, 1280×720)
25709
>>25704
> This command will take forever (around 1 hour)
> forever
> 1 hour
Ххаха. Ха ха ха. Сразу видно человек Хром на Атлоне не компилял. И ничего толще 100 гБ ЛЗМой не жал. Даже Хрюшу на древний Бендиум и то, наверно, не ставил.
Удалить сообщение []
Пароль  
[Mod]