LINUX.ORG.RU

Nix - пакетный менеджер для всех дистрибутивов

 ,


1

0

В статье "Nix - инструмент, помогающий выбраться из "ада зависимостей" (авторы - Pjotr Prins, Jeeva Suresh, Eelco Dolstra, перевод: Юрий Овчаренко) приведен обзор универсального пакетного менеджера Nix, не основанного на других системах управления пакетами. В Nix присутствует поддержка широкого спектра Linux дистрибутивов, имеется возможность одновременной установки нескольких версий одной программы, гибкие средства для обновления пакетов или возврата в состояние на несколько шагов назад. Пакеты, установленные через Nix, самодостаточны и устанавливаются в отдельные директории в дереве /nix/store.

>>> Подробности

★★★

Проверено: Shaman007 ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Просмотрел статью по-диагонали. IMHO какой-то трехколесный горный велосипед на реактивной тяге. Если кто-то так боится dependency hell, пусть пользуется стабильными дистрибутивами.

ist76 ★★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

>Пакеты установленные через Nix самодостаточны и устанавливаются в отдельные директории в дереве /nix/store.

них? ясе как это будет тупить при поиске нужного исполняемого файла\библиотеки.

wfrr ★★☆ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

тухлый номер

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

не нужен! Хотя бы название сменили бы на nux. Тогда бы ещё куда ни шло. А вообще - не новый пакетник надо, а объединение существующих. Хотя бы в рамках внешнего проекта. Хотя это конечно тоже будет лисапед-драндулет хоть куда.

ixrws ★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

C1eDoDe1 ()

Re: Nix - пакетный менеджер для всех дистрибутивов

У nix свой /usr, с карточными играми и развратными женщинами

MadCAD ★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Ура, товарищи! Разработчики nix смогли в очередной раз изобрести велосипед, на этот раз на пяти семиугольных колесах. При использовании nix водитель садится в кресло, закрепленное на балке на расстоянии 3 м от основной рамы. Новая модель оснащена пружиной для завода (чтобы откатиться на заданное расстояние) и совместима с 90% населения Земли!

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

kpackage умеет работать с рпм и деб, не совсем универсально, но остальное экзотика имхо и должно умереть )

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Публикации на оффсайте прикольные. Про пакетный менеджер на чисто функциональном языке. Это даёт надежду, что при грамотной реализации самого дистрибутива на его базе ситуации вроде гентушной "обновили пакет, сломали зависимости по USE-флагам, теперь надо откатить пакеты и накатить заново новые версии" не будут возникать так часто, или вообще. Если purely functional, без побочных эффектов. Получаются по идее самодостаточные devzones.

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

я так понял никто не прочитал по линку что написано. я хочу такой манагер себе в бунте.

bernd ★★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

>Просмотрел статью по-диагонали. IMHO какой-то трехколесный горный велосипед на реактивной тяге. Если кто-то так боится dependency hell, пусть пользуется стабильными дистрибутивами.

Это у тебя от незнания.

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

А nix позволяет не только ставить пакеты со своим деревом зависимостей, но и разные пакеты для разных пользователей. Заодно умеет переносить пакеты с одной системы в другую.

Попробуй поставь файрфокс2 одному пользователю и файрфокс3 другому. Или рядком поставить 32-х битную и 64-х битную версию.

AVL2 ★★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Написано всё конечно красиво, вот только каково это в деле...

Nao ★★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

а ведь отличная штука!

az ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Помойму авторы nix попробовали найти (золотую?) середину между dependency hell и "dll" hell. Вот только не нарвутся ли и на то и на другое?)

Количество установленных библиотек в системе должно в разы увеличится. Тогда, к примеру, две (или более) версии минорно отличающихся друг от друга библиотек будут одновременно загружены. Получается как в винде. Насколько это неэфективно? Насколько это актуально для современных машин с гигами оперативки?

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

Nao ★★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

>...выбраться из "ада зависимостей"

Just use APT, Luke

H5N1 ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Не нужно. И без этого велосипедов хватает.

Deleted ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Вот сижу и думаю - какой нахрен ад зависимостей?

oguretz ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

h8 ★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

Чем-то оно мне похоже на GoboLinux, там тоже каждый пакет в своём поддереве, типа такого:

/Programs/ReiserfsProgs/3.6.19-6/bin
/Programs/ReiserfsProgs/3.6.19-6/share
/Programs/ReiserfsProgs/3.6.19-6/share/doc

и т.д.

Cancellor ★★★★☆ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

> А nix позволяет не только ставить пакеты со своим деревом зависимостей, но и разные пакеты для разных пользователей. Заодно умеет переносить пакеты с одной системы в другую.

> Попробуй поставь файрфокс2 одному пользователю и файрфокс3 другому. Или рядком поставить 32-х битную и 64-х битную версию.

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

При таком раскладе подход Gentoo мне больше нравиться, проще мир пересобирать при смене USE флага.

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

> А nix позволяет не только ставить пакеты со своим деревом зависимостей, но и разные пакеты для разных пользователей.

Разве пакетная система не создана, чтобы таких ситуаций избегать? Если у нас редкий исключительный случай - то prefix.

skwish ★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

> Помойму авторы nix попробовали найти (золотую?) середину между dependency hell и "dll" hell. Вот только не нарвутся ли и на то и на другое?)

> Количество установленных библиотек в системе должно в разы увеличится. Тогда, к примеру, две (или более) версии минорно отличающихся друг от друга библиотек будут одновременно загружены. Получается как в винде. Насколько это неэфективно? Насколько это актуально для современных машин с гигами оперативки?

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

Виртуальные машины в этом плане более понятны.

skwish ★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

> Разве пакетная система не создана, чтобы таких ситуаций избегать?

Нет, не создана.

Это не собачье дело пакетной системы думать за пользователя что ОН хочет. Хочет пользователь иметь в рядок firefox 1.5, 2 и 3 — значит хорошо бы чтобы имел. Хочет и 32-битный и 64-битный mplayer'ы — значит так надо. Дело пакетной системы — всеми файликами управлять потом, чтобы не получить слаки/венды.

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

>Количество установленных библиотек в системе должно в разы увеличится.

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

>Получается как в винде.

получается как в линуксе, поскольку большинство прог собираются и пересобираются с одной версией библиотек.

nix вообще поддерживает сборку из сырцов ака генту. так что никто не мешает оптимизировать кол-во библиотек.

AVL2 ★★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

>Разве пакетная система не создана, чтобы таких ситуаций избегать? Если у нас редкий исключительный случай - то prefix.

зачем избегать? в этом смысле хорош макос. скопировал папку вот тебе и весь инсталл.

А если надо протестировать альфу? почему нельзя поставить ее рядом со стабильным релизом?

AVL2 ★★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

"nix" в разговорном немецком обозначает что-то вроде русского "нихрена"

делаем выводы

swar0g ★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

apt же умеет и рпм и деб, не? не катит?

DELIRIUM ☆☆☆☆☆ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

а причем тут гента?

anonymous ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

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

Мдя =\

MYMUR ★★★★ ()

Re: Nix - пакетный менеджер для всех дистрибутивов

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

А если каждую, что у нас сейчас есть в /usr/bin притаскивать со своей песочницей библиотек, то никаких винтов не хватит.

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