Разработчики дистрибутива openSUSE сообщили об успехах проекта по обеспечению поддержки повторяемых сборок. В рамках проекта подготовлен концептуальный форк дистрибутива Reproducible-openSUSE (RBOS), для которого достигнута возможность сборки 100% идентичных бинарных пакетов на основе предлагаемого репозитория с исходными текстами, насчитывающего 3300 пакетов. В процессе работы над проектом подготовлено около 40 патчей (1, 2, 3), решающих проблемы с повторяемой пересборкой пакетов. Примерно половина из данных патчей уже передана в upstream-проекты. Сборки Reproducible-openSUSE пока рассчитаны только на тестирование и не рекомендованы для использования в рабочих системах, так как для них не формируются обновления с устранением уязвимостей...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=62744
Хотят контролировать что юзеру можно запускать, а что нет.
Нет, хотят вместо картинки товара на упаковке, сделать стенку коробки прозначной чтобы пользователь мог сам посмотреть что внутри.
И что ты там увидишь? Будешь все эти 3300 сорцов читать?
Со времен когда Столлман хотел патчить драйвер принтера, сложность софта на столько увеличилась, что даже самый крутой хацкер не способен проводить аудит кода в одно лицо. Даже просто собрать Firefox не тривиальная задача.
Собрать Жырнолис? Это же очень просто, даже для последних хомяков. У тебя сложности с тулчейнами? Используй пребилженные тогда. Разве что сборка гцц требует всё больше патчей, но это ожидаемо сложный путь. Вот если ты захочешь разбандлить малварь в составе, что-нибудь обязательно посыпется. Тут вопросы к качеству зависимостей скорее. Просто начинай свой день с аудита свежесмерженных коммитов в используемых проектах, их всего-то около 1000 на среднем десктопе.
Разве что Хромоног исключение, никакой уровень артистизма тут не поможет. Но в большинстве проектов изменений минимум.
Так чем там дело-то кончилось, он его пропатчил? Или история успеха как у гнутого хурда получилась?
> И что ты там увидишь? Будешь все эти 3300 сорцов читать?Так код читать не нужно: берёшь исходники из "доверенного источника", собираешь их с дистрибутивными конфигами(а их уж можно и прочитать, там немного) и убеждаешься что твой и дистрибутивный бинарики совпадают. Значит дистр не подсунул тебе лажу.
Можно даже не собирать - "тысячаглаз" код смотрит, "тысячаруков" до тебя уже собирают - намана все! Пацаны отвечают! :)
круто.
молодцы suse, прям возраждение у них какое-то последнее время.
хотя, в сущности-то.. просто копипаста с rh и слепое следование трендам, вроде селинукса или атомарщины, где systemd пакетником рулит.
Интересно. У Альта что ли подсмотрели. Там как раз концепция воспроизводимых сборок одна из ключевых вещей в сборочнице.
Я думал это давным давно у всех сделано. Кажется этим вопросом занимались ещё лет 10 назад.
Вот что LFS животворящий делает.
Какая-то невероятная глупость эти reproducible builds, непонятно, кто и зачем это вообще мог придумать.Linux является source based операционной системой как раз потому, что каждая сборка уникальна и обладает своими плюсами, нужными для конкретного юзера на конкретной машине.
Вводя reproducible builds вы делаете взаимно однозначное соответствие между кодом и бинарником, а значит все плюсы от кода исчезают.
Linux является source based системой? Какую долю рынка занимают source based линуксы? По-моему, ничтожную. Это удел отдельных энтузиастов. Для остальных же важны другие аспекты. Для бизнеса важна безопасность, ибо компрометация инфраструктуры дистрибутива может нанести непоправимые убытки бизнесу. И только reproducible builds могут дать гарантии отсутствия такой компрометации.
Никакой гарантии reproducible builds не дают.Если нужны гарантии, то есть dm-verity, dm-integrity.
Вот допустим есть у тебя парк ПК в несколько сотен. Допусти решил ты перевести его на Linux. Как ты себе представляешь сборку из исходников для нескольких сотен, да хотя бы одной, единицы. И по твоей логике на каждом ПК оно будет уникальным.
Непонятно вообще при чём это тут.Один раз собрал, через МЕ на все машины залил.
И как тебе при таком сценарии воспроизводимые сборки мешают?
Наоборот они тебе позволят нормально изначальную сборку по нескольким машинам распределить
>Вводя reproducible builds вы делаете взаимно однозначное соответствие между кодом и бинарникомКак доказательство отсутствия трояна
Вопрос знатокам. Вы поробавли повторить сборку Slackware Linux? У Патрика есть в официальном репозитории каталог sources, и там появился сценарий сборки make_world.sh. Дерзайте господа, соберите Мир Патрика!
Да, пробовали.Сначала nobodino собрал 14.2, https://github.com/nobodino/slackware-from-scratch
Потом Патрик перенял его наработки в make_world.
Но это не reproducible сборки, и Патрик вообще считает reproducible сборки глупость, на LQ есть тема про них.
>Патрик вообще считает reproducible сборки глупость, на LQ есть тема про них.А тут поподробнее пожалуйста. Почему он так считает? Он против чтобы собрали его дистрибутив при помощи запуска одного скрипта?
Это никак не связанные вещи вообще. Дистрибутив собирается одним скриптом, просто сборка не reproducible, собранная на вашей машине будет чуть более подходить для вашей машины, особенно там, где сборочные системы хотят march=native.
Плюс, в файлах остаются такие метаданные как время сборки, хостнейм, на котором собран файл, и прочие вещи, упрощаюшие отладку иногда.
Что ж, поздравляем OpenSUSE с началом движения в правильную сторону: повторяемая сборка 3.3k пакетов -- это уже довольно немало, и ребята большие молодцы.Тем временем в Debian уже 36.5k src-пакетов успешно пересобираются повторяемым образом:
https://tests.reproducible-builds.org/debian/unstable/index_...
Вот так, с опозданием на кучу лет, в OpenSUSE появляется то, что уже давно есть в NixOS
Зачем вся эта команда если ось только 1,5 года поддерживают? Ее никто не ставит. Продлите суппорт на 5 лет - потом и поговорим.
>если ось только 1,5 года поддерживают?В течении этого времени софт ещё может быть относительно свежим, при условии, что там не заморожены версии
>Продлите суппорт на 5 летТогда нужно очень сильно уменьшать репозиторий, либо отказываться от заморозки. И условный lemp развернуть из родного репозитория будет нельзя. Иначе будет почти один EOL, зачастую без патчей безопасности.
>Тогда нужно очень сильно уменьшать репозиторий, либо отказываться от заморозки.Напиши уж честно, у суси недостаточная команда, чтобы тянуть полноценный дистрибутив.