Увидел свет (https://nixos.org/news.html) релиз пакетного менеджера Nix 2.0 (https://nixos.org/nix/), применяемого в дистрибутиве NixOS. При использовании Nix пакеты оформляются в виде срезов, содержащих необходимые для работы приложений компоненты, которые устанавливаются в отдельное дерево директорий /nix/store или поддиректорию в каталоге пользователя. Код проекта поставляется под лицензией LGPLv2.1.
Nix позволяет выполнять атомарные обновления пакетов, даёт возможность откатывать изменения и одновременно устанавливать несколько версий одной программы. Несколько пользователей могут совместно использовать общее хранилище установленных пакетов и устанавливать программы без необходимости получения прав root.Между пакетами возможно определение зависимостей, при этом для поиска наличия уже установленных зависимостей используется сканирование хэшей-идентификаторов в каталоге установленных пакетов. Например, пакет устанавливается как /nix/store/f3d4q25649f394359bh52d5vf7a0f3-firefox-58.0.0/, где хэш "f3d4q8..." является уникальным идентификатором пакета, используемым для контроля зависимостей.
Возможна как загрузка готовых бинарных пакетов из репозитория (при установке обновлений к бинарным пакетам загружаются только delta-изменения), так и сборка из исходных текстов со всеми зависимостями. Коллекция пакетов представлена в специальном репозитории Nixpkgs (http://nixos.org/nixpkgs/) насчитывает около 6500 пакетов, собранных для платформ GNU/Linux (i686, x86_64, ARM aarch64) и macOS (x86_64-darwin).
В новом выпуске отмечается достаточно много изменений, нарушающих обратную совместимость. Например, прекращена поддержка загрузки на основе манифеста (удалены команды nix-pull, nix-generate-patches, bsdiff и bspatch), копирования из других хранилищ (применялось в инсталляторе NixOS для копирования путей с установочного носителя). Проведена работа по исключению из зависимостей Perl (удалена команда nix-push, вместо которой следует использовать nix copy). Прекращена поддержка системы проверки цифровых подписей на основе OpenSSL и кэширования информации о сбоях в процессе сборки.Из новшеств можно отметить новую команду nix, которая пришла на смену командам nix-* и предоставляет более понятный и простой в использовании синтаксис. Например, доступны подкоманды:
- "nix build" вместо nix-build
- "nix run" вместо "nix-shell -p"
- "nix search" вместо "nix-env -qa"
- "nix copy" вместо "nix-copy-closure" и "nix-push"
- "nix optimise-store" вместо "nix-store --optimise"
- "nix repl replaces" вместо nix-repl
- "nix verify" вместо "nix-store --verify" и "nix-store --verify-path"
- "nix add-to-store" вместо "nix-store --add"
- "nix eval" вместо "nix-instantiate --eval"
- "nix why-depends"
- "nix path-info" вместо "nix-store -q"
- "nix dump-path" вместо "nix-store --dump"
- "nix edit"
- "nix upgrade-nix"
- "nix ls-store" и "nix ls-nar"
- "nix cat-store" и "nix cat-nar"
- "nix show-derivation"
- "nix sign-paths"
- "nix copy-sigs"
- "nix show-config"
Существенно расширены методы доступа к хранилищам, среди поддерживаемых типов хранилищ: LocalStore (локальный путь), RemoteStore (daemon), BinaryCacheStore, HttpBinaryCacheStore (http://, https://), LocalBinaryCacheStore (file://), S3BinaryCacheStore (s3:// Amazon S3), LegacySSHStore (ssh://), SSHStore (ssh-ng://). Добавлена поддержка протокола HTTP/2 и алгоритма сжатия Brotli. Обеспечено сохранение цифровых подписей для путей в локальном хранилище и автоматическое подписывание новых локальных сборок (для проверки следует использовать команду "nix verify"). Добавлены компоненты для обеспечения повторяемых сборок.
URL: https://nixos.org/news.html
Новость: http://www.opennet.me/opennews/art.shtml?num=48133
А сами пакеты то есть? Или менеджер есть, а управлять особо нечем?
>Коллекция пакетов представлена в специальном репозитории Nixpkgs насчитывает около 6500 пакетов, собранных для платформ GNU/Linux (i686, x86_64, ARM aarch64) и macOS (x86_64-darwin).Чукча не читатель?
А при чем здесь чукчи?
«Чукча не читатель» (чукотск. ԓыгъоравэтԓьэн элкалевэтгавылхенгым) — фраза из популярного анекдота советских времён о чукче:Однажды Чукча принес в редакцию свой роман. Редактор прочитал и говорит:
— Понимаете ли, слабовато… Вам бы классику читать. Вы Тургенева читали? А Толстого? А Достоевского?…
— Однако, нет. Чукча не читатель, Чукча — писатель.Используется в случаях обращения к человеку, пишущему коммент, не прочитав внимательно комментируемый текст.
вот чего в линуксе всегда не хватало - так это пакетных менеджеров.
Таких, как nix, не хватало, да.
> вот чего в линуксе всегда не хватало - так это пакетных менеджеров.вот чего в опеннете всегда не хватало - так это экспертов, рассуждающих о том, чего же всегда не хватало в линуксе.
И почему-то большинство экспертов склонялось к мнению, что Линуксе не хватает плейеров :)
А еще калькуляторов, простых граф.редакторов, редакторов кода (простых).А потом адепты получают диплом и все.
Чем это лучше Guix?
Это оно и есть. Пакеты лежат (почти) со всеми зависимостями в собственных каталогах. О том же когда-то Бернстейн со своим /package. И примерно в том же духе собирается комплект бинарей опенофиса или файрфокса.Особо имеет смысл, если практическая работа ориентирована на несколько приложений (тем более особой сборки), или если желательна работа с несколькими версиями приложения.
> Это оно и есть.Да. Более или менее. Сабж - первоисточник идеи, у Guix реализация (и проблемы, велосипедостроение) своя (демона, ="ядро p.m.", скопипастили, да).
>Пакеты лежат (почти) со всеми зависимостями в собственных
> каталогах.Зависимоси лежат в своих отдельных директориях.
_Композиция_ пакетов (=директорий в store/) отдельная операция p.m. (в /opt-"системах" [ниже] такого вообще нет)
>О том же когда-то Бернстейн со своим /package. И примерно
Не-а. djb на трёх страничках https://cr.yp.to/slashpackage.html застолбил "и я тоже сделал /opt! записываться ЗДЭСЪ->".
В духе "обычного" /opt, кажется, -- вали всё в кучу, эникей с rm_-rf разберётся.
Навскидку, совсем не похоже на сабжи.
> в том же духе собирается комплект бинарей опенофиса или файрфокса.
Эти обычные бинарь-бандл-в-/opt собирают.
Никакого package management-а там не наблюдаю. rm_-rf не он.
> Особо имеет смысл, если практическая работа ориентирована на несколько приложений (тем
> более особой сборки), или если желательна работа с несколькими версиями приложения.
>>Пакеты лежат (почти) со всеми зависимостями в собственных
>> каталогах.
> Зависимоси лежат в своих отдельных директориях.Ммм. Ещё отдельные и для зависимостей? У меня почему-то не завёлся он в виртуалке.
>>О том же когда-то Бернстейн со своим /package. И примерно
> Не-а. djb на трёх страничках https://cr.yp.to/slashpackage.html застолбил "и я тоже сделал
> /opt! записываться ЗДЭСЪ->".Ну демонтулзы же он сделал. Я понимаю, что по всей строгости это "не совсем то", но смысл точно тот же -- приложение с собственной обвязкой располагается отдельно.
Guix использует nix.
А Nix не на Guile тоже случайно написан?
> Чем это лучше Guix?http://www.opennet.me/openforum/vsluhforumID3/109929.html#14
http://www.opennet.me/openforum/vsluhforumID3/111294.html#25
http://www.opennet.me/openforum/vsluhforumID3/112386.html#12
http://www.opennet.me/openforum/vsluhforumID3/112972.html#24
http://www.opennet.me/openforum/vsluhforumID3/112348.html#19
http://www.opennet.me/openforum/vsluhforumID3/109779.html#296
http://www.opennet.me/openforum/vsluhforumID3/105576.html#26
http://www.opennet.me/openforum/vsluhforumID3/107150.html#53
Будущее линукса.
Надеюсь габен очухается и потихоньку слезет на никс.
Ты не путай.Будущее линукса - Fedora Atomic Workstation.
нет. Fedora Atomic Workstation - просто proof-of-concept, который сдохнет
Судя по описанию, это то будущее, где ОС еще более беспощадна к ресурсам компьютера.Обмазаться приложениями, каждое в отдельном контейнере и обложиться инстансами докерами. Веселый зоопарк.
Нам такое будущее не нужно.
> Нам такое будущее не нужно."вам камушек подержать?"
самовыпиливайтесь, другого будущего - не будет. Ну или не у линукса.
Патриков Фолкердингов и Дэниелей Роббинсов ещё на Земле найдётся.
Хотя, да, тебе пох. Тебя устраивает жрать, что пропихивают.
Во первых, раздувание ПО - обычная вещь в наши дни. И человек в развитой стране, где доллар не по конской цене продаётся, может себе позволить компьютер на хотя-бы Ryzen 5-ой серии, 8Gb RAM и отдать гигабайт 10 под ОС (винда и то больше занимает). Тут вам не embedded, где железо заведомо медленное и ограничено рамками.Во вторых, с чего вы взяли, что контейнеры отнимают невероятное количество ресурсов? Что-то мне подсказывает, что чего-то наподобие Endless OS вы и в жизни не видели, а уже успеваете обвинять своими предубеждениями.
> Во вторых, с чего вы взяли, что контейнеры отнимают невероятное количество ресурсов? Что-то мне подсказывает, что чего-то наподобие Endless OS вы и в жизни не видели, а уже успеваете обвинять своими предубеждениями.Отнимают не отнимают, это просто некрасиво. Попытка натянуть сову на глобус. Вот в nix/guix сделано правильно.
> Ты не путай.
> Будущее линукса - Fedora Atomic Workstation.
> https://youtu.be/7c3GdfhWzccЯ про десктоп в основном, хочу чтобы не было такого ада, когда выходит свежий гимп и его получаеют юзеры на винде раньше чем на линуксе, потому что там собрали один пакет и выложили, а люди на разных дистрах ждут у моря погоды или компилируют сами (может ещё ведьм начнём сжигать?).
Мне всегда интересовало что такого необходимого в новой версии что на старой пару неделек посидеть нельзя? У вас там за работу под новой версией гимпа +50% к зарплате нaкидывают но не тебе а виндyзятникам?
> Мне всегда интересовало что такого необходимого в новой версии что на старой
> пару неделек посидеть нельзя? У вас там за работу под новой
> версией гимпа +50% к зарплате нaкидывают но не тебе а виндyзятникам?Вот также судят фанатики в эпле: у нас нет вкладок в файндере – они не нужны, вкладки появляются – как мы жили без них.
Да ты реально болен. Подождать 2 недели у тебя аналогично нет вкладок в файндере?
Причём тут эплл вообще? Или у тебя мысли сами по себе в голове бегают и выплескиваются на страницы опеннета?
> Да ты реально болен. Подождать 2 недели у тебя аналогично нет вкладок
> в файндере?
> Причём тут эплл вообще? Или у тебя мысли сами по себе в
> голове бегают и выплескиваются на страницы опеннета?До сих пор общаешься бумажными письмами раз тебе подождать две недели не проблема?
Дожили, некоторые товарищи против прогресса, простоты и быстрых апдейтов.
Что у тебя за шизоидное мышление? Говорим о новой версии ПО а в ответ и макос, и бумажные письма и прогресс какой-то.Так и не услышал кейс по поводу новой версии гимпа. Мне ждать ответ или ты опять бредить начнешь?
>> waylandbeliver
>> ждут у моря погоды
> Подождатьwaylandbeli[e?]ver == то ли верующий в вейланд, то ли в Короля Эльфов, то ли считающий "пусть вейланд будет печенью".
Скорее всего, первое. В этом случае вы все таки знатно по мозолям-то топчетесь, со своим "подожди" (еще чуть-чуть) )
> waylandbeli[e?]ver == то ли верующий в вейланд, то ли в Короля Эльфов,
> то ли считающий "пусть вейланд будет печенью".
> Скорее всего, первое. В этом случае вы все таки знатно по мозолям-то
> топчетесь, со своим "подожди" (еще чуть-чуть) )Я неправильно никнейм написал, а менять как-то и не хочется уже, кек.
Обращение к моему никнейму я буду трактовать как признание ущербности претензий к моей точке зрения.
Ты можешь трактовать всё что угодно. Но свои тайные желания ты тут всем раскрыл своим ником. Вместо простого ответа, на простой вопрос, начинаешь руками разводить и изображать танец маленьких утят. Твои потуги жалко выглядят. Тут есть несколько человек что могут трактовать, объяснять и рассказывать как дело обстоит. Можно с ними дискутировать по этому поводу. Они своим общением здесь всё доказали.
А ты трольчятинка - нет.
> А ты трольчятинка - нет.О вот и полезли словечки из подсознания.
А вообще что ты считаешь тролингом?
В самом первом сообщении я упоминал габена не просто так.
Это была аллюзия на десктопный линукс. У которого 2% аудитории.
На серверах, роутерах и даже смартфонах у ядра линукс всё хорошо.
На десктопе всё печально.Ты рассуждаешь как ребёнок который не может поставить себя на место другого человека, проявить эмпатию – "Ну и что, мне и такой версии хватает, а на тебя просто плевать".
"Ой ну просто напиши сам нужны модуль это опенсорс", "Ну подожди две недели, что такого" – фразы такого типа это вообще завуалированный пассивно-агрессивный посыл на три буквы.
Ты когда повзрослеешь, то поймёшь что у людей может не быть времени или желания что-то делать, причём не потому что это плохие люди, а потому что они весь день работали, забирали детей из школы, работали по дому и хочется просто отдохнуть в конце дня, а не изучать как компилировать гимп или инкскейп.
Видишь, уже проекции пошли на меня. Продолжай раскрываться.
Тебе просили привести пример кейса, и намекнули о подводных камнях. В ответ какая-то эмпатия. С чего мне проявлять эмпатию к школьничку? Ты же сформулировать не можешь зачем взрослым людям, забравшим детей из школы после работы, сидеть и втыкать в обновки линукс машины. Тебе сейчас страшную тайну открою. Но взрослые дяди и тети имеют мало свободного времени. И либо они занимаются как хобби работой над опенсурс ПО, либо они не трогают то что работает.
Не обижайте мальчика!
Ест печень эльфского короля, kurwa!!!
> Мне всегда интересовало что такого необходимого в новой версии что на старой
> пару неделек посидеть нельзя? У вас там за работу под новой
> версией гимпа +50% к зарплате нaкидывают но не тебе а виндyзятникам?Ну бывает же, что вот именно с этой версии есть именно то, что именно тебе помогает.
Ну так примеры то давайте. Такие телодвижения я могу понять в мире закрытого софта. Вышел релиз нового офиса - начали внезапно присылать документы в новом формате. Срочно надо обновиться здесь и сейчас. В мире опенсурс какие проблемы? Подождать 2 недели, найти репы где неофициальные новые сборки, перейти на другой дистрибутив(где собирают тик-в-тик), стать самому ментейнером.
Вариантов я вон вагон накидал.
И самое интересное: как именно ты узнал что именно в этой версии есть то что именно тебе помогает? Без тестирования на нестабильных версиях ты не можешь знать что именно тебе поможет. А если ты пробовал нестабильные версии именно оттуда ты и возьмешь новую версию.Не вижу вообще проблем с этой ситуацией в мире опенсурса.
> Ну так примеры то давайте. Такие телодвижения я могу понять в миреЯ всего лишь насчёт удивления "зачем свежайшие версии и поскорее".
Притом даже, что лично меня "свежайшие версии" не особо интересуют, мне сразу приходит в голову пример: в 4-й серии libreoffice вдруг испортили растеризатор в формульном редакторе. И назад откатывать было без пользы, был необъезжаемый глючок. Вот и пришлось подождать.
> И самое интересное: как именно ты узнал что именно в этой версии
> есть то что именно тебе помогает?Из газет?
> Из газет?Ребя, это уже не смешно. Тут официальным багтрекерам и платной поддержки от гигантов индустрии не веришь - приходится перепроверять. А вы все верите тому что написано в ченджлоге. Может подумать и понять что без тестирования в своем окружении нет возможности проверить?
>> Из газет?
> Ребя, это уже не смешно. Тут официальным багтрекерам и платной поддержки от
> гигантов индустрии не веришь - приходится перепроверять. А вы все верите
> тому что написано в ченджлоге. Может подумать и понять что без
> тестирования в своем окружении нет возможности проверить?Да о каком классе ПО вообще речь? В прикладном, если написано, что делается Икс, хватает малого времени, чтобы убедиться, делается ли Икс, и как хорошо.
При этом очень удобно разворачивать новую версию раздельно, хоть в /package, хоть в nix, лишь бы не пересекалось.
Понятно также, что на новых мажорных версиях неплохо делать запаску с конфигурации и т.д.
Речь о любом классе ПО. Вон тут один пару недель подождать не может новой версии, настолько припекает. Примеров зачем это надо привести не может. Ты говоришь что в новой версии есть убер-фича, что поможет работать. Так как ты поймешь что она тебе поможет работать если ты ещё не проверял её? И что это за убер-фичи что некоторое время подождать не может?
> Вариантов я вон вагон накидал.
> И самое интересное: как именно ты узнал что именно в этой версииНа опеннете прочитал или на линуксовом ресурсе. ОПАНЬКИ
> есть то что именно тебе помогает? Без тестирования на нестабильных версиях
Ой, только не про стабильность пожалуйста, на дебиане и центоси я уже насмотрелся на стабильность с багами которые годами не чинят. Спасибо больше не надо.
> ты не можешь знать что именно тебе поможет. А если ты
> пробовал нестабильные версии именно оттуда ты и возьмешь новую версию.Сам называет людей больными и при этом не стесняется показывать признаки заболевания.
Какие нестабильные? Они просто новые, очередные версии.
Наглядная ситуация это Firefox/Chromium/Chrome на дебиане – где команда фактически сдалась и начали просто чаще собирать новые версии.> Не вижу вообще проблем с этой ситуацией в мире опенсурса.
> Ну так примеры то давайте. Такие телодвижения я могу понять в миреКакие примеры, просто нормальному человеку всё понятно.
Ты не логичен.
> закрытого софта. Вышел релиз нового офиса - начали внезапно присылать документы
> в новом формате. Срочно надо обновиться здесь и сейчас. В миреА что в этом плохого? Новые версии браузеров лучше старых, новые плееры лучше старых и так далее.
Что за воспалённая картина мира где апдейты несут только зло.
> опенсурс какие проблемы? Подождать 2 недели, найти репы где неофициальные новыеЗачем мне какие-то репы от васяна если есть официальные разработчики?
> сборки, перейти на другой дистрибутив(где собирают тик-в-тик), стать самому ментейнером.Мне делать нечего по твоему?
> На опеннете прочитал или на линуксовом ресурсе. ОПАНЬКИПобольше капси, скобочки ещё ставь. Не стесняйся себя опанька.
Те кто интересуется версиями софта и что с ними происходит либо напрямую с интересующих листов рассылки/сайта получают информацию. Либо совсем в девлоперской рассылки трутся. Но ты не из их числа.> Ой, только не про стабильность пожалуйста, на дебиане и центоси я уже насмотрелся на стабильность с багами которые годами не чинят. Спасибо больше не надо.
Хм, да ты и по русски то не очень разумеешь. Русским языком сказано - если ты уверен что новый релиз Х.У.0 тебе помогает то ты должен был это проверить на нестабильной версии - Х.У-1.9(9), как минимум. Хотя есть те которые только строчку на новостном сайте прочитают и уже бегут всё новое ставить. Дикари-с.
> Сам называет людей больными и при этом не стесняется показывать признаки заболевания.
> Какие нестабильные? Они просто новые, очередные версии.Алё, гараж. Ты в курсе как изначально выпускались версии и чего придерживались в мире опенсурса? А не вот в этих ваших хромокомбайнах. Делали стабильную ветку Х.У.0, где У была четная. Туда в основном кидали исправления ошибок. Для новых версий делали ветку Х.У+1 где ломали и внедряли что угодно. После стабилизации она превращалась в версию Х.У+2. Так было принято. И если ты не оттестил на нестабильной версии новшества, откуда ты гундосый можешь знать что там в новой стабильной будет работать? Это не тебе хромокомбайнирование. Так люди проверяли как будет работать будущий ипчейнс или будущий иптейблс. Но нет, надо же без проверки сразу ставить новую версию - прибавление цифр ведь решит все проблемы.
> Какие примеры, просто нормальному человеку всё понятно.
> Ты не логичен.Это из разряда одна бабка сказала? Ну не сливайся ты так убого.
> А что в этом плохого? Новые версии браузеров лучше старых, новые плееры лучше старых и так далее.
Особенно пользователи амарока, кда и гнома тебе расскажут как стало лучше и так далее.
> Что за воспалённая картина мира где апдейты несут только зло.
Да уж явно не картина школьников, где по крону надо апдейтить с гита новые версии ПО. Или пересобирать весь мир через день. Тебе бы в большую фирму попасть на месяцок, поучиться процессу управления изменениями. Потом по другому начнешь относиться и к обычным обновлениям.
> Зачем мне какие-то репы от васяна если есть официальные разработчики?
О. А у нас уже репы от известных ментейнеров васяновскими считают?
> Мне делать нечего по твоему?
Судя по тому что ты здесь пишешь, да. Тебе делать нечего. Но как тот кот не достаешь - приходится плакаться о невозможности обновлений в твоем дистре ровно в момент создания релиза ПО.
С тех пор как редхет отдался микрософту, у десктопного линукса нет будущего.
А может наоборот?
С тех пор как микрософт посчитал, что редхат ему продался, у декстопного виндовс пропало будущее.
> Будущее линукса - Fedora Atomic Workstation.Чур Вас.
Так это получается portage не на питоне с поддержкой бинарников который не требует пересобирать мир когда что-то не работает?
А то. Слез с генты на NixOS, дико доволен.
> Так это получается portage не на питоне с поддержкой бинарников который не
> требует пересобирать мир когда что-то не работает?Нет, совсем не https://nixos.org/~eelco/pubs/phd-thesis.pdf получается. Страдайте.
TL;DR в чем проблема конкретно? Или в самой идее проблема?
> "nix upgrade-nix"Если это то, о чем я думаю, то это oтстой. Потому что привязка к центральному источнику. Этой болезнью страдают сейчас все: npm, stack, rust...
Пользы около нуля, а впечатление портит.
Слава богу, можно делать так: nix-env -i -f (file|ssh|https|...)://foo.bar/path
> Failed build caching has been removed. This feature was introduced to support the Hydra continuous build system, but Hydra no longer uses it.То есть, сломано одно, а чиним другое. Сначала делаем, потом думаем.
> `nix edit` opens the source code of a package in your editor.И вытак никогда и не узнаете, где оно лежит,или откуда загружено. Удачи с коммитом в Гит :)
>> `nix edit` opens the source code of a package in your editor.
> И вытак никогда и не узнаете, где оно лежит,или откуда загружено. Удачи
> с коммитом в Гит :)Так git diff.
Вы не в теме.
Лол. Теперь все мои патчи в nixpkgs недействительны. (((
> On Linux, builds are now executed in a user namespace with UID 1000 and GID 100.
> a user namespaceFuck.
Ещё одна сомнительная прокладка.> Normally, one of the first steps after creating a new user namespace is to define the mappings used for the user and group IDs of the processes that will be created in that namespace.
Зачем namespace, если все равно нужен внешний id?
Вместо приюития гвоздями, достаточно добавить опции.
Потому что файлы должны кому-то принадлежать в родительской системе.
> необходимые для работы приложений компоненты,
> которые устанавливаются в отдельное дерево директорий /nix/storeНу спасибо что не в C:\Program Files хотя-бы. А то могли бы, для полной аутентичности.
Чет не втыкаю, если у меня уже nixos, это чтобы этими более удобными командами пользоваться надо еще пакет nix ставить? O_o
nix.package = pkgs.nixUnstable