LINUX.ORG.RU

В чём смысл Никсоси?

 , ,


0

3

Вчера решил потыкать палкой в Никсось. Вопросов в итоге больше, чем ответов.

1. Декларативный конфиг. Запихнули все настройки в один файл. В других линуксах это будет комплект файлов. Но потаенный смысл «декларативности» ускользает.

2. Вся движуха происходит в /nixos/ базовая иерархия линуксовых директорий практически не используется. В чем опять же, смысл? Устроить срач в одной отдельно взятой директории? Причем этот срач превосходит изначальный срач в других линуксах.

3. Не релевантность опыта использования Никсоси. Можно десятилетия сидеть в никсоси и не иметь опыта в линуксе. Всё, что происходит в никсоси - остается в никсоси.

4. Воспроизводимость системы. Непонятно зачем. Развернуть одинаковую систему на много компов одновременно? Это можно сделать и в других линуксах. И это не то, что надо делать постоянно.

Первое впечатление такое, что Никсось похожа на сельский сортир с дыркой в полу, который снаружи обложили керамической плиткой. По полезности, изучение никсоси примерно на одном уровне с клингонским языком.

Это всё сугубо мое личное мнение. Возможно, я сильно заблуждаюсь. Кто сможет раскрыть мне глаза?

ДОБАВЛЕНО: Еще один животрепещущий вопрос. Как в никсоси разруливаются зависимости? Существует ли разделение на обязательные и необязательные? И если да, то как это настроить?

И да, чехарда с именами разделов при загрузке - присутствует.

★★★★★

Последнее исправление: utanho (всего исправлений: 2)

Ответ на: комментарий от init_6

Юзер/юзеры со своими правами, группами, задачами и ПО необходимым для выполнения этих задач.

Нету уже этих «юзеров» давно, ушла эпоха терминалов. Теперь это один какой-нибудь util, под которым админы заходят логи смотреть и все, поскольку в 99% это будет виртуальная машина.

Все остальное описанное про снапшоты как раз и актуально для виртуального использования.

И между старым и новым снапшотами можно переключатся так-же как и между разными ОС в дуалбуте

Просто мечта современного сисадмина, живущего в реалиях кривого и вечнопадающего корпоративного софта.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Нету уже этих «юзеров» давно, ушла эпоха терминалов.

Как скажешь.

Все остальное описанное про снапшоты как раз и актуально для виртуального использования.

Всё остальное как раз актуально для использования на чём угодно. NixOS и/или его компоненты можно использовать и на:

  • реальном железе;
  • в гипервизорах;
  • в облаках;
  • на любом другом дистрибутиве GNU/Linux;
  • в WSL;
  • на смартфонах с android-ом;
  • на железе apple в macOS…

И конфигурации для всего этого разнообразия могут быть описаны в одном единственном репозитории.

Просто мечта современного сисадмина, живущего в реалиях кривого и вечнопадающего корпоративного софта.

А ты живёшь в реалиях исключительно только «кривого и вечнопадающего корпоративного софта» и кроме этого больше никаких сюрпризов у тебя не возможно?

init_6 ★★★★★
()
Ответ на: комментарий от init_6

NixOS и/или его компоненты можно использовать и на

Но зачем? Никсось не вчера появилась, за 20 лет её неудачная концепция себя уже показала, сейчас это просто ненужно.

arax ★★
()
Ответ на: комментарий от utanho

Кто первый успел, тот и sda.

Так это не имеет никакого отношения к разделам, а by-id и by-path вполне себе работают для дисков. Если в системе больше одного диска, они не совокуплены в рейд (независимы) и на одном из них стоит grub - это в принципе единственно рабочий и верный вариант, куда ставить этот самый grub, иначе при его обновлении всё ломается. Это всё актуально для всех дистрибутивов

Tsukasa
()
Ответ на: комментарий от arax

Но зачем? Никсось не вчера появилась, за 20 лет её неудачная концепция себя уже показала, сейчас это просто ненужно.

Что-то помимо NixOS может и умеет в то-же самое но гораздо лучше? Просветишь что именно?

init_6 ★★★★★
()
Ответ на: комментарий от ac130kz

не значит, что она неудачна

Мне раньше и тем более сейчас, когда давно уже не пользуюсь, неочевидно, как происходит апдейт софта. Не апгрейд системы, когда в конфиге изменяют версию, а именно софта. Аналог sudo pacman -Syyu.

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

Поясню. Я использую pwsh (и она есть среди списка пакетов, хоть и очень старая даже в unstable) в качестве юзер-шелла, у меня на нем построена вся скриптовая юзер-спейс инфраструктура. Для полноценной работы в сети (Test-Connection, т.е. ping) бинарнику $pshome/pwsh необходимо добавлять возможности sudo setcap cap_net_raw=eip /path/to/pwsh. но как мне найти этот бинарь, симлинк в мастер-срез не катит.

Это лишь пример, возможны и другие подводные камни.

dmitry237 ★★★
()
Ответ на: комментарий от dmitry237

необходимо добавлять возможности sudo setcap cap_net_raw=eip /path/to/pwsh.

Делай это через security.wrappers, как весь остальной софт которому это нужно

но как мне найти этот бинарь

Так же, как и в других случаях: ${pkgs.pwsh}/bin/pwsh в нужной опции

из-за этого возможны различные глюки для специфичных приложений

Всё должно быть описано в конфиге и тогда никаких «глюков для специфичных приложений» не будет. В чём вообще смысл использовать дистрибутив, в котором всё автоматизируется и продолжать навешивать свои костыли руками? Не нужно в nix/store лезть вообще ни при каких условиях

Tsukasa
()
Последнее исправление: Tsukasa (всего исправлений: 1)
Ответ на: комментарий от ac130kz

То, что она непопулярна, не значит, что она неудачна.

Именно это оно и значит, арч и никсось появились примерно в одно время, но у арча был kiss и diy, а у никса своя никчемная концепция, как итог первый стал самым популярным дистрибутивом, а о втором только пара десятков пердоликов на форумах хайпят.

arax ★★
()
Ответ на: комментарий от Tsukasa

Всё должно быть описано в конфиге и тогда никаких «глюков для специфичных приложений» не будет.

Это да. Но я устанавливаю путем распаковки tar.gz архива, дабы была самая новая версия (сейчас 7.4.0-preview.5). Версии на самом деле во многом различаются по функционалу, новые экспериментальные возможности, где-то подслащены, где-то изменено поведение. Обычно это /opt/pwsh и симлинк в /opt/bin, который в $PATH (в /etc/environment). Я себе не представляю весь процесс запуска на Nixos, скорее всего ничего не получится.

Не нужно в nix/store лезть руками, вообще ни при каких условиях

Вот эта абстракция и не нравится. Когда ушел с nixos было ощущение, как-будто вздохнул полной грудью, такая чистота и порядок в традиционном FHS-линуксе. В общем, мое мнение (естественно), для дома не нужно.

dmitry237 ★★★
()
Ответ на: комментарий от arax

как итог первый стал самым популярным дистрибутивом, а о втором только пара десятков пердоликов на форумах хайпят.

Это следствие хайпа арча в конце нулевых, ни больше, ни меньше. Тогда хайп арча воспринимался точно так же, как сейчас хайп NixOS - люди просто о нём узнали. Узнали бы про NixOS раньше, и хайп был бы раньше, может арч уже давно загнулся бы за ненужностью.

Гугел вон в свою новую поделку влепил nix: https://www.youtube.com/watch?v=-wlZY4tfGMY&t=615s

Как же так получилось, что никчемный, никому не нужный nix, который решает несуществующие проблемы туда зашёл, а б-жственный kiss и diy пакмана туда в принципе невпихуем?

Tsukasa
()
Ответ на: комментарий от dmitry237

Вот эта абстракция и не нравится

а вот теперь если прикинуть, пусть у приложения поменялся путь, тогда нужно покурить чейнджлоги и руками придется в конфиг лезть. А если таких приложений 500, вот для этого декларативщина и полезна, естессна для маленькой системки это оверкил

ac130kz ★★
()
Ответ на: комментарий от Tsukasa

Гугел вон в свою новую поделку влепил nix

Гугел постоянно выкатывают какую-то хрень, которую сам же закапывает через время. Так что nix в этой хрени вполне гармонично выглядит.

Как же так получилось, что никчемный, никому не нужный nix, который решает несуществующие проблемы туда зашёл, а б-жственный kiss и diy пакмана туда в принципе невпихуем?

Давай посмотрим, что такое настоящая востребованность.

Среди активных Linux-пользователей игрового сервиса Steam, доля Ubuntu 22.04.2 составляет 7.38%, SteamOS - 42.07%, Arch Linux - 7.94%, Linux Mint 21.1 - 3.84%, Manjaro Linux - 4.29%.

При этом SteamOS уже два года как тоже на Арч переехал. Странно, да?

alex1101
()
Ответ на: комментарий от dmitry237

Это да. Но я устанавливаю путем распаковки tar.gz архива, дабы была самая новая версия (сейчас 7.4.0-preview.5).

Так не устанавливай путём распаковки архива, устанавливай путём добавления в конфиг

Я себе не представляю весь процесс запуска на Nixos, скорее всего ничего не получится

powershell в репе есть, не вижу проблемы обновить его до нужной версии

такая чистота и порядок в традиционном FHS-линуксе

/opt/pwsh и симлинк в /opt/bin, который в $PATH (в /etc/environment)

Ну что я могу сказать, мяу

Tsukasa
()
Последнее исправление: Tsukasa (всего исправлений: 1)
Ответ на: комментарий от alex1101

При этом SteamOS уже два года как тоже на Арч переехал. Странно, да?

Он переехал на OSTREE, пользоваться там пакманом нельзя, ибо всё снесётся при следующем же обновлении SteamOS

Ну и да, перешёл на арч - перейдёт и на NixOS: https://imgur.com/tFBKnxR

Tsukasa
()
Ответ на: комментарий от init_6

Очень подробно и доходчиво, но саё так же неясно, для чего это всё.

И да, если в никсоси

В NixOS и 2) и описание юзеров/групп и всего ПО которое им надо из 3) вместе со всеми их настройками хранится в едином месте /etc/nixos в виде совокупности кода на ЯП nix language для пакетного менеджера nix.

То как настроить шрифты в консоли?

utanho ★★★★★
() автор топика
Ответ на: комментарий от alex0x08

Вот это больше похоже на правду. Я начал эта тему, чтобы понять, что никсось дает простой домохозяйке.

Снапшоты по любому чиху - этт явно не то, что нужно.

utanho ★★★★★
() автор топика
Ответ на: комментарий от caryoscelus

Пакетный менеджер должен использовать ограниченную, документированную модель. А не опираться на тьюринг-полный язык. Когда такое нужно - это показатель недоработанности модели.

Shushundr ★★★
()
Ответ на: комментарий от init_6

И конфигурации для всего этого разнообразия могут быть описаны в одном единственном репозитории.

Что создает такую штуку как «точка отказа». Питание сбойнет, затрется или как-то еще повредится твой чудоконфиг и все, всей системе хана. Обратная сторона централизации.

А ты живёшь в реалиях исключительно только «кривого и вечнопадающего корпоративного софта» и кроме этого больше никаких сюрпризов у тебя не возможно?

Чувак я тебе пишу с ноутбука под FreeBSD, окстись.

Понимаю что ты «фанат», но есть же «границы применимости», цель и смысл. Никось как и Alpine, как и Tails, как и Kali - для особого использования, не повсеместного и точно не для всех.

Если ты ставишь себе на хост никось чтобы разобраться это нормально, если ты ее гоняешь по работе в виртуалках - тоже нормально. Но вот так ходить по форумам и советовать ее детям и домохозяйкам явный перебор.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Что создает такую штуку как «точка отказа». Питание сбойнет, затрется или как-то еще повредится твой чудоконфиг и все, всей системе хана. Обратная сторона централизации.

Это работает не так. Из конфига собирается система, потом ты её активируешь, а дальше хоть rm -rf тому конфигу, системе на него побоку. Конфиг системы - это такие себе сорцы, а сама система - можно сказать бинарник. Сорцы у тебя должны быть в репе, на бинарники пофиг, можно всегда пересобрать с сорцов

Tsukasa
()
Ответ на: комментарий от init_6

И конфигурации для всего этого разнообразия могут быть описаны в одном единственном репозитории.

Сама идея неплохая, вы постоянно на это намекаете. Но для чего весь остальной велосипед?

Если бы это был обычный линукс, со своим configuration.nix то он давно бы взлетел.

utanho ★★★★★
() автор топика
Ответ на: комментарий от alex0x08

Через разницу между снапшотами будет видно что очередная гадость в системе наделала.

Нет там никаких снапшотов, вообще забудь это слово применительно к NixOS

Tsukasa
()
Ответ на: комментарий от Tsukasa

Если в системе больше одного диска, они не совокуплены в рейд (независимы) и на одном из них стоит grub - это в принципе единственно рабочий и верный вариант, куда ставить этот самый grub, иначе при его обновлении всё ломается. Это всё актуально для всех дистрибутивов

Совсем не так.

utanho ★★★★★
() автор топика
Ответ на: комментарий от Tsukasa

Из конфига собирается система, потом ты её активируешь это такие себе сорцы, а сама система - можно сказать бинарник.

Замечательно, полагаю из «готового бинарника» назад «исходник конфига» не получить? Тогда rm -rf конфига на раз-два хоронит всю работу, потому как врядли у домохозяйки под столом будет еще и отдельный сервер с репозиторием для таких конфигов.

alex0x08 ★★★
()
Ответ на: комментарий от utanho

Я сужу по тому, что происходит во всех дистрибутивах, когда соизволят обновить grub. Я видел жалобы людей на форумах арча, в багтрекере дебиана, в репозитории NixOS (единственное место, в котором таки разобрались в чём суть проблемы).

Совсем не так.

А как? Развёрнуто пожалуйста, а то я тоже могу сказать «Нет», отличная дискуссия получится

Tsukasa
()
Ответ на: комментарий от alex0x08

Замечательно, полагаю из «готового бинарника» назад «исходник конфига» не получить? Тогда rm -rf конфига на раз-два хоронит всю работу

Именно так. Как и любую другую работу, в любых других файлах, бекапы нужны, без них никак

потому как врядли у домохозяйки под столом будет еще и отдельный сервер с репозиторием для таких конфигов.

Github, Gitlab, Codeberg, Sourcehut, и т.д. и т.п. не, не слышал? Тем кто пробует NixOS с самого начала советуют git. Не нравится - никто не заставляет

Tsukasa
()
Ответ на: комментарий от alex0x08

И боюсь что детям и домохозяйкам гит не зайдет.

Зато им отлично зайдёт мобила, им энтот ваш линуск нафиг не впёрся, шиндовс в принципе тоже. Но тут же не форум детей и домохозяек я надеюсь?

Tsukasa
()
Ответ на: комментарий от Tsukasa

Но тут же не форум детей и домохозяек я надеюсь?

Временами сложно сказать )

Но думаю мою идею ты понял, что Никось - инструмент не для всех. Вообще в увлечении чем-то нет ничего плохого, до тем пор пока это не перерастает в фанатизм и желание искоренять «всех нетаких».

alex0x08 ★★★
()
Ответ на: комментарий от utanho

после перезагрузки начинают множиться пункты меню.

Во-первых не после перезагрузки, а после nixos-rebuild switch или nixos-rebuild boot, а во-вторых, тебе жалко места на экране в загрузчике, или что не так?

Tsukasa
()
Ответ на: комментарий от alex0x08

Но думаю мою идею ты понял, что Никось - инструмент не для всех.

Скрипка тоже инструмент не для всех, но это же не форум для музыкантов? Это форум обсуждения линуска, тема обсуждения - NixOS, задают конкретные вопросы, получают конкретные ответы, развенчиваются всякие заблуждения. Никакого фанатизма и искоренения всех нетаких я пока не заметил, такие приколы есть разве что в гнутых проектах

Tsukasa
()
Ответ на: комментарий от Tsukasa

Как же так получилось, что никчемный, никому не нужный nix, который решает несуществующие проблемы туда зашёл

Загнивающие корпорасты в итоге всегда скатываются к карго культам, поэтому и зашел.

а б-жственный kiss и diy пакмана туда в принципе невпихуем

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

arax ★★
()
Ответ на: комментарий от Tsukasa

Так не устанавливай путём распаковки архива, устанавливай путём добавления в конфиг

Мне удобней из архива, т.к. там самая новая версия, к тому же межрелизная. Из конфига я получу версию, отстающую на два релиза, даже в unstable. Можно еще snap, но это тоже не вариант.

powershell в репе есть, не вижу проблемы обновить его до нужной версии

Как обновить с 7.3.2 до 7.4.0-preview.5? И главное, нафига мне все эти заморочки и декларативные абстракции, когда nixos простоял полгода, а традиционный линукс после него уже четыре года. Это был эксперимент на посмотреть, у меня сложилось личное представление, о чем я и написал выше.

dmitry237 ★★★
()