LINUX.ORG.RU

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

 


2

5

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

Да хватит жрать, что дают, серьезно говорю!

Я краем уха слышал и краем глаза видел на сайте NixOS, что помимо декларативного управления системой, там пакеты (и комплексы пакетов) живут каждый своей жизнью, как бы в контейнерах (простите, если контейнеризация это не про это)?

Например:

/nix/store/5rnfzla9kcx4mj5zdc7nlnv8na1najvg-firefox-3.5.4/

Т.е. я собрал пакет и его зависимости в их, определенной комнате — и этот пакет работает хорошо, обновляется хорошо и никаких проблем с его использованием нет? Типа как appimage, но нет.

Звучит слишком заманчиво, чтобы быть правдой. Ну а вдруг?

Какие недостатки у подобных систем, в чём минус, кроме чуть больше потраченного времени на сборку и установку пакета? Вы довольны переходом на NixOS? Только честно, в чём недостаток?

// про генту не нужно, на обмазывался локальной репой, конфликтующей с деревом, именно с неё сбегал на воид (на ноуте, рабстанция по-прежнему на генте, т.к. рабочий процесс настроен и досвидос).

Спасибо.



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

Я хотел себе запилить GuixSD на десктоп, но что-то не взлетело с EFI (Mac). Вроде бы grub все нужные файлы устанавливает (grub-efi), но EFI его не запускает всё равно.
У кого-нибудь есть опыт загрузки именно этого (GuixSD) дистрибутива из EFI? В Void Linux без проблем всё заводилось, а тут прям ни в какую, не осилил разобраться.

vyazovoi ★★★
()

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

У тебя 10 пакетов по 10 зависимостей по 10 метров. Каждый в отдельной «комнате». Итого на 10 программ 1 гиг. При этом у тебя по 10 копий одних и тех же программ.

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

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

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

в nixos есть очистка мусора по требованию

anonymous
()

Звучит слишком заманчиво, чтобы быть правдой. Ну а вдруг?

Да это правда. В окружение попадает только нужное; апгрейды почти всегда безболезненны (см. ниже); система не встает раком в промежуточном состоянии, если вдруг апгрейд/переконфигурация не удалась, а остается в прежнем; можно переключаться между состояниями из консоли/загрузчика. Пользуюсь год, брат жив.

Вы довольны переходом на NixOS?

Доволен, ощущения до сих пор такие, как будто впервые линукс (или нечто лучше) открыл. Все дистры, которыми пользовался до этого оставляли лишь пресные ощущения.

Только честно, в чём недостаток?

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

При мне как-то сломали стабильный канал, но такие вещи можно быстро исправить переключением канала или переходом с каналов на гит и исправлением проблемы прямо в клоне репозитария nixos

Еще из-за FHS несовместимости оказывается проще опакетить какой-либо софт, чем пытаться пропатчить бинари вручную. Для случаев особой срочности есть правда buildFHSUserEnv

Комьюнити живое, но хотелось бы больше народу и пакетную базу как в арче :-)

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

У тебя 10 пакетов по 10 зависимостей по 10 метров. Каждый в отдельной «комнате». Итого на 10 программ 1 гиг. При этом у тебя по 10 копий одних и тех же программ.

Ну, не совсем так я полагаю, наверняка умнее, но запишем пока как первый минус, да.

slon
() автор топика
Ответ на: комментарий от Deleted

от анонимуса не скастует

эх...

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

Ну, не совсем так я полагаю, наверняка умнее, но запишем пока как первый минус, да.

не спеши минусовать. если у 2+ пакетов одинаковые зависимости, то эти зависимости будут в 1 экземпляре.

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

Именно это я и имел в виду, я примерно представляю себе идеальную систему, но сложно пока-что представить, что это действительно реализовали в nixos, читаю сайт, сейчас буду качать и ставить на T420.

slon
() автор топика
Ответ на: комментарий от anonymous

апгрейды почти всегда безболезненны (см. ниже); система не встает раком в промежуточном состоянии, если вдруг апгрейд/переконфигурация не удалась, а остается в прежнем; можно переключаться между состояниями из консоли/загрузчика

Всё это достижимо на любом дистрибутиве, установленном на Btrfs.

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

если вдруг апгрейд/переконфигурация не удалась

Что значит «не удалась»? Что конкретно и насколько часто отваливается?

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

Всё это достижимо

Но не особо нужно вне роллинга. Проблем с обновлением внутри релиза я не встречал много-много лет, а проблему при обновления с релиза на релиз я прошлый раз создавал себе сам — Есть ли причины использовать apt-* вместо aptitude? (комментарий)

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

Да что угодно: пакет не удалось скачать; ты в конфиге нарисовал бесконечную рекурсию; ты переопределил системный пакет, наложил на него кривой патч и пакет не собрался и так далее. Одним словом, все, что можешь воспрепятствовать успешному созданию нового состояния

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

Что значит «не удалась»? Что конкретно и насколько часто отваливается?

1. Девочка услышала на лоре о выходе новой Calligra. И решила попробовать.

2. Обновилась половина KDE.

3. Девочке не понравилось. Как девочке вернуть всё обратно как было?

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

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

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

Тема пункта 2 совершенно не раскрыта. У девочки наверняка убунта, а там в оф.репах только пятые кеды.

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

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

если дистр - например Debian (а если точнее - его stable ветка), то да, в 99% все именно так.

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

если дистр - например Debian (а если точнее - его stable ветка), то да

Только если обновления и багфиксы не нужны.

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

мегастабилен
годами использовать без поломок

Ни про одно человеческое творение я так сказать не могу, но фраза

нужда в откатах появляется ... от кривых действий пользователя

в большинстве случаев справедлива.

Насчет

весь софт в репозиториях можно годами использовать без поломок при обновлениях

гарантируется, что окружение во время сборки очередного пакета будет содержать только требуемые пакету зависимости. Соответственно, бинарный пакет, собранный на билд-ферме дистрибутива и пакет, собраный на локалхосте будут одинаковы (при совпадении ревизии дистра), а в подавляющем случае побитово идентичны (не для всех пакетов этого можно добиться). Это упрощает поддержку софта и процесс взаимодействия между мейнтейнером и пользователем. Т.е. нет такой ерунды как в обычных дистрах уровня, где мейнтенер что-то забыл, у пользователей шляпа, а он только руками разводит и говорит «у меня вот собирается и работает»

anonymous
()

Интересненько. Если вдруг моя слака скурвится (что вряд ли), я теперь знаю, куда бежать.

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

Круто. Очко в пользу красношляпы. А проблему наличия множества версий одной библиотеки они решили?

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

На самом деле, в рамках dnf, или любого централизованного системного ПМ, оно идеологически не решается, ИМХО.

Лично я надеюсь на повсеместное внедрение штук типа snap/faltpak/appimg, что бы отдельные единичные приложения можно было просто ставить, не трогая систему и всё остальное. Но уже сейчас это звучит по-дурацки - этих систем «единого и неделимого способа распространения приложений» уже штук 5 (ага, и nix пакеты в том числе). Этот зоопарк не способствует тому, что бы авторы, например, Calligra, были мотивированы делать сами какой-либо пакет «с пылу, с жару», потому что им всегда будут пенять: " а почему не обычный deb/flatpak/nix??". Эдакий буриданов осел.

Nix - проблему не решает, а, наоборот, ухудшает, добавляя еще одну охапку сена.

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

На самом деле, в рамках dnf, или любого централизованного системного ПМ, оно идеологически не решается, ИМХО.

Почему?

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

Зависимости не дублируются(если не считать разные версии конечно).

Основная проблема это то что придется писать пакеты/модули самому да и ещё на nixlang(хотя язык простой, но всё равно). + отсутствие FHS

Вторая проблема это то что собрав уютный configuration.nix с кастомными пакетами, модулями, настройками захочется заиспользовать nixos везде.

Лично у меня впечатление что дистрибутиву не хватает разработчиков и он развивается медленне чем хотелось бы(впечатление составлено по issues на гитхабе).

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

Потому что dnf (и Ко) для другого: создать непротиворичивый минимальный набор зависимостей для всего софта в репозитарии. Это была изначальная задача, и к её идеальному решению вплотную подошли.

А задача дать пользователю ставить кучу версий либ\софта, немного не ложится на вышеприведенную, получается криво. Но оно и не нужно: не надо делать из стамески лобзик.

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

В этом весь Линукс, он многообразен и не стандартизирован. В этом плане приятна macOS - приложение скачал, перенес в папку, пользуешься.

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

этих систем «единого и неделимого способа распространения приложений» уже штук 5 (ага, и nix пакеты в том числе).

Я думаю, nix можно не считать :) Систем по сути две - snap и flatpak, но это тоже слишком много.

tailgunner ★★★★★
()

NixOS нужна. Раньше приходилось лазить в тыщу конфигов, чтобы что-то настроить, а теперь все настраивается в одном месте :)

anonymous
()

Yep! NixOS makes life so much easier :) Instead of tinkering with your OS, you get more time to work on other things instead. After switching to NixOS from Arch Linux I've never looked back (I loved Arch before the switch). Now I can't imagine running anything else, both on my laptop and on any of the servers I manage.

anonymous
()

тебе уже ничего не поможет

buratino ★★★★★
()

Тоже подумываю потыкать NixOS на свободном ноуте. Причём, похоже, что более-менее адекватную оценку тебе тут никто не даст. Будешь только читать всякую anonimous-style хрень типа вот этой:

У тебя 10 пакетов по 10 зависимостей по 10 метров. Каждый в отдельной «комнате». Итого на 10 программ 1 гиг. При этом у тебя по 10 копий одних и тех же программ.

Которая является заведомым враньём.

nezamudich ★★
()

Т.е. я собрал пакет и его зависимости в их, определенной комнате — и этот пакет работает хорошо, обновляется хорошо и никаких проблем с его использованием нет? Типа как appimage, но нет.

Как быстро надоест всё пересобирать?

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

Воид всем устраивает, кроме сабжа. Достаточно развернуто?

slon
() автор топика

наверное скажу что-то не то, но единственным реально работающим решением в плане разработки и поддержки системы вижу OBS. прозрачно, относительно доступно (в плане старта локального сервиса), окружение сборки и пользователя идентично.

сколько уже было (и загнулось) дистров, что предлагали чуть ли не сборку статики с установкой в отдельную директорию (--prefix==/opt/${appname}-${appver}/) а-ля M$/Mac? чем в итоге отличен «контейнер» от той же статики? тем, что вынуждает тебя держать в системе зоопарк библиотек с которыми ты, в теории, линкуешь что-то ещё кроме?

насчёт «мудк всё сломал и стало плохо ппц как..»(ц), т.е. немного про нормальную системы отката на ранние/другие версии. пример, не более:

> s z se -s kernel-default
Loading repository data...
Reading installed packages...

S | Name                 | Type       | Version    | Arch   | Repository               
--+----------------------+------------+------------+--------+--------------------------
i | kernel-default       | package    | 4.4.36-8.1 | x86_64 | openSUSE-Leap-42.2-Update
v | kernel-default       | package    | 4.4.36-5.1 | x86_64 | openSUSE-Leap-42.2-Update
v | kernel-default       | package    | 4.4.27-2.1 | x86_64 | openSUSE-Leap-42.2-Oss 
«бери любую и тебе будет в кайф»(ц).

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

Кастовой этикет

Во-первых, кастовать без слова cast невежливо, во-вторых, кастовать без подробностей невежливо вдвойне, а вообще спасибо.

Camel ★★★★★
()
Ответ на: Кастовой этикет от Camel

Простыню дашь или хотя бы наволочку про субж?

slon
() автор топика

Не про это

как бы в контейнерах (простите, если контейнеризация это не про это)

Там не используется контейнеризация, контейнеризация не про это.

Какие недостатки у подобных систем, в чём минус, кроме чуть больше потраченного времени на сборку и установку пакета?

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

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

Итого 40

У тебя 10 пакетов по 10 зависимостей по 10 метров. Каждый в отдельной «комнате». Итого на 10 программ 1 гиг. При этом у тебя по 10 копий одних и тех же программ.

Так будет только если все программы тянут зависимости строго разных версий. На практике на 10 пакетов будет ещё штук 30 зависимостей.

Camel ★★★★★
()

Aus

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

Camel ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.