Разработчики дистрибутива NixOS сообщили о реализации поддержки верификации целостности минимального iso-образа (iso_minimal.x86_64-linux) при помощи механизма повторяемых сборок. Ранее повторяемые сборки были доступны на уровне отдельных пакетов, а теперь расширены и для всего iso-образа. Любой пользователь может сформировать iso-образ, полностью идентичный с предоставляемым для загрузки iso-образом, и убедиться, что он собран из предоставляемых исходных текстов и не содержит скрытых изменений. Для автоматизации проверки iso-образа NixOS при помощи повторяемых сборок подготовлен специальный скрипт. На следующем этапе повторяемые сборки планируется обеспечить для полного iso-образа с рабочим столом GNOME...Подробнее: https://www.opennet.me/opennews/art.shtml?num=55362
Круто! 👍
Не то слово. У них даже быстрая установка самая необычная. Никуда лезть не нужно, а сразуThe quickest way to install Nix is to open a terminal and run the following command (as a user other than root with sudo permission):
Скорейший путь установки Nix - открыть терминал и запустить следующую команду (как пользовать отличающийся от root с разрешениями sudo)$ curl -L https://nixos.org/nix/install | sh
(вот тут странно, ибо $ это обычный пользователь, так что либо эту команду из-под root с приглашением # или добавить sudo).
Make sure to follow the instructions output by the script.
Следуйте инструкциям, которые выводит скрипт.The installation script requires that you have sudo access to root.
Скрипт установки требует доступа через sudo к root.
Лично меня всегда нервировали хомячковые скрипты -- никогда не знаешь, что они сломают в этот раз.
Но ведь это то же самое что netinstall из работающей системе я так понял. Это официальный скрипт. Конечно всегда лучше руками разбить диск и вручную все поставить как в Gentoo. Но nix же немного ближе к пользователю.
Это Nix а не NixOS.
Всем и так понятно о чем речь в новости про NixOS. Это делается чтобы не загаживать ненужной информацией. Кому-то нравится SailfishOS, а кому-то Аврора. Дошло надеюсь.
> Лично меня всегда нервировали хомячковые скрипты -- никогда не знаешь, что они сломают в этот раз.Они из энтерпрайза. Глянь питон мэнеджер LVM у Красно Шапки. Вот там уже стрёмно.
А хомки частенько годно скриптуют, ибо для себя, а не для чужой халтуры.
"Быстрая"
"Следуйте инструкциям"
Типичный линух
Не линух, а линукс. Бездарь, даже выучить такие простые вещи не в состоянии. И да в шинде установщик действует ровно точно так же. Массовая установка это для корпораций, то есть для лютого энтерпрайза с тысячами компов. И да линукс можно установить вручную без инструкций. И это нормально. Хоть полностью из исходных текстов. Только вот не повторяй тупость про типичный линукс.
Запускать напрямую скрипты из интернета без проверки печально, хотя этого разгильдяйства становится все больше.
А кто-то требует _не_ проверять скрипт? Или кто-то блокирует возможность его почитать?
Кому вообще интресно это? Чем это лучше Генты?
Вопрос на миллион - зачем вообще оно надо?
Не, переформулирую вопрос: в каком сценарии преимущества никса становятся киллерфичами? Ну кроме спавнящихся образов виртуалок у облачных провайдеров.
Знаю человека, который установил NixOS + XMonad и в результате выучил Haskell первым языком. Считает себя начинающим пользователем.Знаю нескольких человек, которые изучили единственным языком bash и считают себя программистами операционных систем. Пишут код, который представляет опасность для окружающих (например, удаление initramfs от установленных в дуалбуте ОС https://www.opennet.me/openforum/vsluhforumID3/124517.html#116 при обновлении systemd)
Можно сколь угодно критиковать Haskell за синтаксис и академичность, но язык учит формализовать и алгоритмизировать задачи, даёт солидную базу, а не иллюзию знаний и тяп ляп и в продакшен.
Смысл существования NixOS и подобных ОС не в киллер-фичах, а в подготовке квалифицированных специалистов.
> в каком сценарии преимущества никса становятся киллерфичами?Ну, например, в случае патологической лени при необходимости поддержания, модификации и быстрого развёртывания множества несвязанных друг с другом серверов.
$ cat ~/.ssh/config | grep -E '^Host' | wc -l
489
> Ну, например, в случае патологической лениЭто видимо не про вас, вы слишком не ленивый человек. Вместо одной команды три написали.
Зато в чуть более сложной ситуации, когда "ленивые" проштудируют 68 man-ов и не найдут там подходящих ключей, он так же машинально напишет новую программу.
Нууу, мне кажется сложно не найти -c и то что grep тоже умеет читать файл сам, а не только из stdin.Но конечно да, тогда велосипедостроение окажется под ударом.
Хотя, глядя на тенденции, я думаю что велосипедостроение в безопасности.
Я не знаю про ключ --count. Принципиально не забиваю таким голову. Запомнил grep как некий аналог substr(). Если мне надо искать что-то более сложное, я начинаю подозревать, что использую не тот инструмент.Надысь прислали ссылку http://okmij.org/ftp/ML/myawk/index.html
Пример оттуда
cat ./bench_result.txt | grep baseline >| bench_baseline.txt && \
cat ./bench_result.txt | grep staged >| bench_staged.txt
А если здесь вместо файла stdin? Они же приводят решение на OCaml без повторного чтения
let () =
with_output_file "bench_baseline.txt" @@ fun chbase ->
with_output_file "bench_staged.txt" @@ fun chstaged ->
for_each_line ~fname:"bench_result.txt" @@ fun l ->
l |> cases [
optthen (strstr "baseline") (fun _ -> print ~ch:chbase [l]);
optthen (strstr "staged") (fun _ -> print ~ch:chstaged [l]);
fun l -> Some (print_endline l) (* default case *)
]
А вот мой велосипед:<Close 2> не очень в 21-м веке выглядит, но это потому что <Card> -- ввод с перфокарты. То есть тут ещё вопрос, а что на самом деле велосипед.
начало = <Open 'w' 1 'bench_baseline.txt'>
<Open 'w' 2 'bench_staged.txt'>
<распредели>
<Close 2>
<Close 1>;распредели {
= <распредели <Card>>;
0 = ;
. 'baseline' … = <Putout 1 . …> <распредели>; // подстрока 'baseline' не копируется в результат.
. 'staged' … = <Putout 2 . …> <распредели>;
. = <Prout .> <распредели>;
}
> А если здесь вместо файла stdin? Они же приводят решение на OCaml без повторного чтения
> let () =
> with_output_file "bench_baseline.txt" @@ fun chbase ->
> with_output_file "bench_staged.txt" @@ fun chstaged ->
>
> for_each_line ~fname:"bench_result.txt" @@ fun l ->
> l |> cases [
> optthen (strstr "baseline") (fun _ -> print ~ch:chbase [l]);
> optthen (strstr "staged") (fun _ -> print ~ch:chstaged [l]);
> fun l -> Some (print_endline l) (* default case *)
> ]
>> (по ссылке) ... a lightweight and less idiosyncratic replacement for AWK ...Кхе. На "заменяемом" AWK:
|awk '/baseline/{print $0 > "bench_baseline.txt";next} /staged/{print $0 >"staged.txt";next}{print $0}'
Спасибо. Только bench_staged.txt вместо staged.txt.Тем не менее, ключами grep эта задача не решается? О чём и шла речь. А авторская реализация на OCaml мне и самому не нравится.
я слишком ленивый, чтобы искать в манах неочевидные фичи, и вообще чтобы заранее думать, что я хочу от команды получить. Начинаю с cat-а, по ходу дальше пальцы сами что-то допечатывают...
egrep -c '^Host' ~/.ssh/config
А Волга впадает в Каспийское море.Вы слишком серьёзны, господа. "Это печально" (с)
И вообще, вот вам, оптимизатором, живите теперь с этим:
$ strace urxvt 2>&1 | grep -E '^stat.+site_perl' | wc -l
43423
$ echo $PERL5LIB | wc
1 1 8994
А потом такое уходит в прод в виде ынтыпрайс решений за деньги, и когда оно ломается, то ... Ничего хорошего.
Ну ежели найдётся работничек, засунувший подобное в прод, многое будет зависеть от его таланта.Но бывает и хуже, когда эффективные методы ведения бизнеса тащут во все дыры, и даже в личную жизнь.
> Ну ежели найдётся работничек, засунувший подобное в прод, многое будет зависеть от его таланта.Находятся работнички которые протаскивают такое в решения которые эффективные бизнесы потом продают за хорошие деньги. Лично от этого страдал и вероятно, ещё пострадаю.
Потому теперь я ещё более нетерпимо отношусь к однострочникам вроде вашего вышедшими за пределы разового запуска на localhost. Вчера вы его напечатали здесь, завтра васян из очередной модной конторы делающей ынтыпрайс запостит это на стековерфлоу и получит зелёную галочку, а послезавтра оно придёт мне в проде.
Так дело не в односторочниках. Если кто-то обладает достаточными знаниями, что бы реализовать атаку вида "отказ в обслуживании" на DHCP сервер, да ещё и применить её с пользой (для нормализации работы сегмента сети), он может себе позволить для тренировки памяти изучить все эти ключики утилиты grep. А если кто-то знает только лишь эти ключи и случайно оказался не на своём месте -- ему ничего не остаётся, как копировать в прод что и откуда попало.
> А если кто-то знает только лишь эти ключи и случайно оказался не на своём месте -- ему ничего не остаётся, как копировать в прод что и откуда попало.К сожалению, мой опыт показывает что случайно оказавшиеся не на своём месте гораздо чаще копируют невероятные однострочники без понимания происходящего, нежели правильно написанные команды :(
А по ключам - так я их например, никогда не учил (честно говоря хотел но лень). Просто операция подсчёта совпадающих строк - это крайне типовая операция в админской работе, и рано или поздно ты приходишь к выводу что "а может всё уже придумано для нас?" и внимательно смотришь в man. И видишь что таки придумано, а ещё оказывается там много чего другого уже придумано, и потому со временем начинаешь man открывать чаще, а велосипеды строить реже тратя творческие силы на то что действительно ещё не придумано.
> операция подсчёта совпадающих строк - это
> крайне типовая операция в админской работеВот это всё и объясняет. В работе программиста такой операции нет. И нет строк. Есть последовательности символов, разделённые спец.символами. Программист обязан уметь мылить абстрактно. Те три команды - типовое "открой файл - прочитай - обработай".
Я выше писал, что NixOS это нишевый продукт. Готовит не админов, а программистов. Вот Дворник вместо вызова утилиты и написал программу. Если Вам, как админу, пришлось самому реализовать программу -- это говорит о нехватке толковых программистов. В нормальной ситуации пришлось бы написать максимум параграф "теоретические основы".
> Я выше писал, что NixOS это нишевый продукт. Готовит не админов, а
> программистов. Вот Дворник вместо вызова утилиты и написал программу.Так я ничего против не имею. Но мне плохо от того когда такое попадает на просторы интернета, а потом программист который "мыслит абстрактно" кладёт это в итоговый продукт ("ну работает, на стековерфлоу зелёная галочка, а чо?").
И когда что-нибудь в длиннющем конвейере идёт не так, то это уже проблема админов. В итоге, чтобы хоть что-то понять приходится включать strace, добавлять отладки в подобные поделия, и вообще порой частично переписывать.
> Если Вам, как админу, пришлось самому реализовать программу -- это говорит о нехватке толковых программистов.
Вы так говорите, будто это редкий случай. Но ведь нет, и чем дальше тем хуже.
Но вообще я за то чтобы все программисты обязательно поработали админами, чтобы понимать как их поделия в эксплуатации выглядят. А админам ваще тоже не помешало бы уметь программировать, хотя бы чтобы понимать как быстрее диагностировать что там программисты понаписали и если что оперативно изобрести свой костыль.
>> Я выше писал, что NixOS это нишевый продукт. Готовит не админов, а
>> программистов. Вот Дворник вместо вызова утилиты и написал программу.
> Так я ничего против не имею. Но мне плохо от того когда
> такое попадает на просторы интернета, а потом программист который "мыслит абстрактно"
> кладёт это в итоговый продукт ("ну работает, на стековерфлоу зелёная галочка,
> а чо?").Программист не может взять такое с просторов Интернета и скопировать. По той простой причине, что существенно быстрее самому написать. Но вот именно такое программист напишет только в командную строку. В исходном тексте программы подобное возможно лишь в виде аналога из примитивов языка программирования, а не вызовов исполняемых файлов ОС. Либо пишется что-то для себя, потому что "дай-ка я хоть немного изучу баш, а то админы косо смотрят".
> И когда что-нибудь в длиннющем конвейере идёт не так, то это уже
> проблема админов. В итоге, чтобы хоть что-то понять приходится включать strace,
> добавлять отладки в подобные поделия, и вообще порой частично переписывать.Оно не так по двум причинам:
1. конвейер является инструментом командной строки, а не механизмом передачи данных внутри программы;
2. для баша отсутствует аналог doxygen.
Из чего делается незамысловатый вывод: баш это не язык программирования. Это средство для написания сценариев автоматизации в 1-2 экрана.>> Если Вам, как админу, пришлось самому реализовать программу -- это говорит о нехватке толковых программистов.
> Вы так говорите, будто это редкий случай. Но ведь нет, и чем
> дальше тем хуже.Потому что когда-то на баше писали, когда на Си слишком долго и дорого, а Perl пошел в Веб, а не в командную строку. Потом начали писать, потому что "гыы, лол, в твоей Венде коммандком ничего не умеет! ставь Линукс, станешь программистом". А ныне пишут, потому что ничего другого не знают.
> Но вообще я за то чтобы все программисты обязательно поработали админами, чтобы
> понимать как их поделия в эксплуатации выглядят. А админам ваще тоже
> не помешало бы уметь программировать, хотя бы чтобы понимать как быстрее
> диагностировать что там программисты понаписали и если что оперативно изобрести свой
> костыль.Не знаю, как такая ситуация могла получиться. По-моему, дело должно выглядеть так: админ ставит задачу, как ему надо, программисты реализуют. В несколько итераций. А тут похоже, что пришли эффективные менеджеры и принялись управлять.
Мне кажется, вы живёте в каком-то заповеднике... Возможно, в заповеднике троллей :))Потому что в реальности с которой я сталкиваюсь последние лет 10 всё мягко говоря не так как вы описываете.
> Не знаю, как такая ситуация могла получиться. По-моему, дело должно выглядеть так:
> админ ставит задачу, как ему надо, программисты реализуют.Это точно какой-то заповедник. В реальности - product owner делает какую-то задачу в которой интересы админов и программистов учтены по стольку по скольку, обычно примерно никак.
И в наиболее толковых конторах (вроде той где я сейчас) у админов есть шанс к этому заданию добавить что-то своё чтобы оно было минимально управляемым. В других - таких шансов нет. И как результат - починка прода производится только полным рестартом всего что есть. Это кстати, тоже не выдуманный пример, один широко известный отечественный проект.
Ну... я действительно несколько испорчен, если можно так выразиться, человеческим отношением. А так, я видел даже, как "разработчик" операционной системы советует пользователю скопировать раздел home в каталог командой dd. До этого даже не думал, что такое дно вообще возможно.Потому если я пишу выше, что программист что-то никогда не сделает, но в реальности кто-то так поступает -- значит там одно название, а не программист.
И когда я написал "должно", имел ввиду, что иначе ничего путнего не выйдет. С хлебом за тысячи лет поняли, что сначала надо вспахать, потом засеять, и только после получится собрать урожай. Иначе product owner-у придётся вкушать землицы.
>> Ну, например, в случае патологической лени
>Это видимо не про вас, вы слишком не ленивый человек. Вместо одной команды три написали.Это просто умеет конструировать. Вместо готовой тулы готов и способен своё делать. Более высокая ступень (иногда), чем работа "в одну команду".
> Это просто умеет конструировать. Вместо готовой тулы готов и способен своё делать.А что тогда не что-нибудь вроде:
> perl -ne '/^Host/ && $n++; END { print "$n\n"}' < ~/.ssh/config?
> Более высокая ступень (иногда), чем работа "в одну команду".
Более высокая ступень, это когда конструирование включается там где оно действительно нужно. Иначе это велосипедирование, и чаще всего - избыточная трата ресурсов. В результате современные компьютеры работают так, будто они на бобинах и чём-то типа 8080 процессоров. "Это печально" (С)
> Иначе это велосипедирование, и чаще всего - избыточная трата ресурсовПодъём штанги - тоже избыточная трата ресурсов. Как и бег по парку, езда на велосипеде, походы в горы, танцы и ещё много всяких других активностей.
Проблема в том, что в отличие от компьютеров, людей надо тренировать, поэтому избыточная трата ресурсов должна быть регулярной.
> Проблема в том, что в отличие от компьютеров, людей надо тренировать, поэтому
> избыточная трата ресурсов должна быть регулярной.Ну и сравнения... Но коли уж у вас пошли сравнения с тренировками, то пример выше - это всё равно что становую тягу делать с согнутой спиной, бегать втыкаясь пяткой, ездить на спущенных колёсах и ходить в поход с пакетами из Пятёрочки.
Нормальная же тренировка для человека это не избыточная трата ресурсов а поддержание системы в хорошем состоянии. Примерно как обновления в ОС регулярно ставить и домашний компьютер время от времени пылесосить.
> и ещё много всяких других активностей
Тут хочется сказать: "так не можно говорить по русский язык"
> Вопрос на миллион - зачем вообще оно надо?
> Не, переформулирую вопрос: в каком сценарии преимущества никса становятся киллерфичами?
> Ну кроме спавнящихся образов виртуалок у облачных провайдеров.С точки зрения простого пользователя Nix (Guix) имеют самую здравую и более совершенную систему установки и управления версиями разного софта, нежели appimage, а уж тем более флатпаки и всякие снапы.
Оно намного более продуманно, логично, экономнее по ресурсам (тут можно поспорить (места на диске может занимать гораздо больше, чем с рядовыми пакетными манагерами которые нативны для разных дистров)) и безопаснее.
Дистрибутив почти во всём хорош, кроме, пока что, стабильности (тут всё познаётся в сравнении, смотря с каким дистром сравнивать) и лёгкости установки и настройки - разбираться придётся густо, выпив не одну поллитры, потому что NixOS сильно отличается от остальных дистров.
Во всём остальном он решает многие проблемы других дистрибутивов, которые порой в текущий момент скорее нерешаемы вовсе.
В сценарии, когда (если) дистры начнут терять персонал.
Уже столько лет дистрибутиву, а архитектур как было две, так и есть (64 и 32). Когда уже хотя бы arm станут официально поддерживать и вытащат загрузку образа на главную с ним?
Когда ты им денег дашь. Пока что разрабы сидят на amd64.Кстати, ia32 они вроде прибили. Потому что оно сдохло.
То есть идея - пофиг. Почему тогда МС плохой - а эти круто?
>То есть идея - пофиг. Почему тогда МС плохой - а эти круто?какую идею придумал пофиг кто это такой? мс плохой по определению
>>То есть идея - пофиг. Почему тогда МС плохой - а эти круто?
> какую идею придумал пофиг кто это такой? мс плохой по определениютот кто тупой по определению
https://mobile.nixos.org/devices/pine64-pinephone.html
Нету на главной, ибо АРМ -- это помойка из разных костылей. На ПК эти костыли хотя бы унифицированы.
> Нету на главной, ибо АРМ -- это помойка из разных костылей.Её тоже понемножку унифицируют; не скажу за картину по всем дистрибутивам общего назначения, у которых при этом есть армовые репозитории, но как минимум getalt.ru/simply можно поставить довольно много на что (причём соотношения "одна железка -- один образ" уже нет).
Столько лет человеку, а он всё равно пишет не проверяя свои слова и создавая информационный шум, сбивающий с толку остальных, это читающих.
Загляните в мануал и прочитайте, aarch64 (а это RPi4, если вы не читали и про это) официально поддерживается и достаточно давно.
ну может человек хочет 32-битный armили чтобы это была первая ссылка на главной странице большим жирным шрифтом
Классная фотка, тёска!
тёзка
Аноним — не человек.
Очень такое понятное, не вводящее в заблуждение название...
Сборка бинарных пакетов не равно официальная поддержка и наличие iso установщика. Толку-то от наличия этих aarch64 бинарников?
> Сборка бинарных пакетов не равно официальная поддержка и наличие iso установщика. Толку-то
> от наличия этих aarch64 бинарников?Ловко-ловко, выкрутиться и придумать iso-образы для aarch64. И вновь шум, и вновь человеку с улицы покажется, что вы написали что-то вполне разумное, аргументированное даже. Вам ведь тоже так показалось?
А теперь поищем официальные iso-образы у гигантов и любимчиков толпы. Ubuntu? Arch? Ой, а где они? Повлияло ли это на распространение этих проектов на aarch64? То-то.
Но у NixOS, конечно же должны быть иначе даже и рассматривать это проект не стоит! Сразу в помойку. Пакеты суют мне какие-то тут.
Меж тем образы вполне есть и даже собираются для вас совершенно бесплатно раз в день. Инфраструктура у проекта очень даже неплохая и работает, хорошо работает даже без учёта его малого размера: https://hydra.nixos.org/job/nixos/release-20.09/nixos.sd_ima... (это LTS). Я собираю сам и это очень просто, прям в докере.
К вашему сведению, Ubuntu имеет образ: https://ubuntu.com/download/server/arm
Arch – дистрибутив одной архитектуры. Есть неофициальный форк под arm, да.
Но лучше бы вы обратили внимание на Debian. Там iso или rootfs есть для каждой поддерживаемой архитектуры. И их там не 2 и не 3, а уже к 20 приближается.
И нет, я нигде не писал, что отсутствие iso и официальной поддержки препятствует установке на иных архитектурах. Просто это становится менее удобнее, по сравнению с наличием.
Нет, ну не надо, оно есть и вполне работает, хоть и с особенностями. Например, nixos-rebuild switch на малинке без свопа просто никогда не завершится, а со свопом, нуу, приходится очень долго ждать.
А как они раньше без повторяемости жили? Там же всё по хэшам. Или это не хэши?
Вероятно, там считается хеш не исполняемых файлов, а части графа зависимостей.
По хешам там загружаемые из интернета файлы, при компиляции могут получиться невоспроизводимые билды из-за зависимостей пакетов от таймингов/фич процессора/текущей даты-времени/прочего
> По хешам там загружаемые из интернета файлы, при компиляции могут получиться невоспроизводимые
> билды из-за зависимостей пакетов от таймингов/фич процессора/текущей даты-времени/прочегоТак там про это и написано, что решается этот момент, с влиянием этих данных на повторяемость, как решается это другой вопрос, но они утверждают, что решается.
Это - хэши. Но уже скомпиленных файлов. Они не меняется же просто так. Как ты своем пакетном манагере если пакет поставил, то там те же файлы (и их хэши), что будут и на соседнем компе.
Воспроизводимость пакетов даёт возможность саомму собрать точно такой пакет (и тогда у него да, будет такой точно хэш).
Это не хэши скомпиленных файлов. Это хэши всего, что нужно для получения скомпиленных файлов.
По умолчанию по хэшам инпута (грубо говоря, совокупности билд скриптов пакета и всех его зависимостей со всеми значениями всех переменных, при неизменности которых теоретически результат сборки должен быть неизменным), а не аутпута (т. е. содержимого пакетов).
Кстати, это чудо способно создать iso-образ прямо из конфигурации работающей системы, со всеми накопленными за годы гостылями и извращениями. Иногда бывает полезно.
Способно. И именно потому, что там нет ни костылей ни извращений, которые способны копиться годами.
Это с чего спорно-то? Костыли и извращения, они-таки в конфигах конкретной системы накопились, и явно не зря.
> Это с чего спорно-то?Это о чём?:)
> Костыли и извращения, они-таки в конфигах конкретной системы
> накопились, и явно не зря.Тут концепция другая. Тут почти весь /etc примонтирован в RO. И потому все "костыли" вынуждено попадают в /etc/nixos/configuration.nix, из которой и строится стейт всей системы с пакетами, их конфигами, скриптами и вот этим вот всем. И нет никакой разницы собирать из этого конфига рабочую систему, делать исошник, или разворачивать её на виртуалках/докерах/облаках. Весь смысл в том, что нет никаких туевых хуч скриптиков, которые раскиданы по всей ФС, и которые правят косяки опакеченного софта. Вся конфигурация помещена в, формально, два файла с инклюдами по ситуации: один задаёт параметры софта, второй задаёт параметры "железа".
> Это о чём?:)Вот и я не пойму, о чём спор. Мой nixos строится c 2017 года, и много уж успел повидать.
И да, в один файл такое при всём желании не засунуть.
>> Это о чём?:)
> Вот и я не пойму,бывает:)
> о чём спор.
если не читать, что пишет собеседник, то тоже бывает.:)
>Мой nixos строится c 2017 года, и много уж успел повидать.
ну и слава КПСС!
> И да, в один файл такое при всём желании не засунуть.
У всех как-то помещается, а тут вона чего.:)
Неразумно считать себя понимающим всё и вся; эта мудрость порой приходит со временем.
Ты не понимаешь о чём спор потому, что ты слово "способно", читаешь как слово "спорно". Ну а дальше, как это часто бывает, уже ведешь спор не с собеседником, а с голосами в своей голове, которые тебе и нашептали "спорно".
нужно больше дистрибутивов:)
>На следующем этапе повторяемые сборки планируется обеспечить для полного iso-образа с рабочим столом GNOME.как гном? они же кде-шниками были.
>> Повторяемые сборки являются важным звеном обеспечения безопасности, так как дают возможность самостоятельно проверить, что предлагаемые дистрибутивом сборки байт в байт совпадает со сборками, собранными лично из исходных текстов. Без возможности проверить тождественность бинарной сборки пользователю остаётся лишь слепо доверять чужой сборочной инфраструктуре, компрометация компилятора или сборочного инструментария в которой может привести к подстановке скрытых закладок.Как-то я не понял этого вывода. Ну то есть зачем качать откуда-то ISO, а потом сверять байт в байт с ним, если я сам при помощи этого инструмента создам себе ИСО из исходников? Проверить что они не обманщики? Ну проверил один раз, поверил им, а дальше стал качать с их сайта? Ну так может их взломают и второй раз уже там будет вредоносный исошка.
Или предполагается скомпилить тождественную исошку, проверить, а потом как с дисками винды. Типа на болванку 1-в-1 скопировал, но если с лицензионного оригинального ставить, то ошибок меньше будет)
Если есть простой способ проверить хешсуммы, то кто-нибудь это сделает. И если там будет несовпадение, то об этом станет известно. Если об этом ничего не известно, то тут одна из ситуаций, когда "отсутствие свидетельства -- свидительство отсутствия". Не доказательство, но свидетельство.Несовпадения могут возникать по разным причинам, и не все они связаны со злоумышленностью мейнеров дистрибутива. Воспроизводимые сборки позволяют сделать невозможными многие сценарии внедрения закладок в софт, в том числе и некоторые связанные со злоумышленностью. Скажем, взять и опубликовать одни сорцы, а скомпилировать другие -- это не сработает. Закладку придётся публиковать в сорцах. А это значит, что кто-то может сделать diff между апстримом и сорцами nix, увидеть разницу, и найти закладку.
Ну то есть для обычных пользователей это лишь даёт надежду, что некто доброволец скомпилит исо, проверит хеши и в случае несовпадения успеет поднять шумиху до того момента, как юзер скачал исо и поставил систему.
Простым юзерам и открытые сырцы "дают лишь только надежду". Потому, что они по определению - простые юзеры и в сырцы не смотрят. И проги не компиляют сами.
> Ну то есть для обычных пользователей это лишь даёт надежду, что некто
> доброволец скомпилит исо, проверит хеши и в случае несовпадения успеет поднять
> шумиху до того момента, как юзер скачал исо и поставил систему.Да. Но если тебя интересует безопасноть, то ты же не будешь пытаться оценить её по _одному_ критерию? Ты соберёшь максимум информации о проекте. Посмотришь на то, как ведётся разработка, что там за issues, feature-requests, как идёт обсуждение, сбор информации, как принимаются решения, как они исполняются и внедряются. Где какие чекпоинты есть. Сколько людей вовлечено в принятие решений. Насколько процесс открыт. Кто пользуется проектом. Есть ли какие-то независимые (от основных разработчиков) сервисы, занятые в режиме непрерывной интеграции проверкой воспроизводимых сборок. бла-бла-бла...
Ты посмотришь на всё это, если у тебе действительно нужна безопасность и есть хоть капля мозга. И в этом случае, воспроизводимые сборки -- это охрененный бонус, потому что они дают возможность внешней проверки работы мейнтейнеров. На самом деле, сама по себе возможность говорит нам о том, что мейнтейнеры пошли на выполнение довольно сложных работ, по отслеживанию всех прямых и косвенных депендансов, то есть нет никаких неизвестных им факторов, влияющих на содержимое финальных бинарей.
С разморозкой.
Так и не смог заставить работать libvirt-хуки под NixOS. Так бы был моим основным дистрибутивом, но, видимо, не судьба.