Один из разработчиков KDE попытался (http://blogs.kde.org/2013/06/19/really-source-code-software) проанализировать насколько реально воссоздать бинарный файл, идентичный распространяемым готовым сборкам, при наличии полных исходных текстов, на основе которых были произведена сборка. Таким образом была оценена возможность проверки собран ли представленный исполняемый файл из указанных исходных текстов и содержит ли то, что заявлено создателями сборки.
В качестве эксперимента было произведено сравнение исполняемых файлов, поставляемых в составе дистрибутивов Debian, Fedora и openSUSE, с исполняемым файлом, собранным из доступных пакетов с исходными текстами. Для теста выбран пакет с утилитой tar. В теории, зная все параметры сборки и версии используемых при сборке компонентов, можно воссоздать исходное сборочное окружение, сборка пакета с исходными текстами в котором должна привести к получению тождественных исполняемых файлов. На практике всё оказалось не так просто, при каждой сборке получались разные исполняемые файлы. Основное причиной различий является сохранение в исполняемом файле данных, связанных со временем сборки.
При оценки пересборки пакетов Debian результаты полностью оправдали предположения - различие составило 20 байт, и в этих байтах содержалась дата сборки. Для openSUSE и Fedora не удалось достигнуть повторяемости или хотя бы объяснить причину значительных различий. В качестве наиболее вероятной гипотезы отмечаются возможные отличия в сформированной для тестирования сборочной среде - для сборки использовалась текущая версия тестируемого дистрибутива, но не факт, что аналогичное окружение были использовано разработчиками, а даже при незначительных изменениях используемого инструментария результат меняется кардинально.
Полученные результаты свидетельствуют, что при распространении бинарных сборок недостаточно открывать доступ к коду под свободными лицензиями. Без приведения точной спецификации сборочной среды невозможно проверить на основе представленных исходных текстов собрано приложение или в нём использованы какие-либо модификации. Без возможности проверить тождественность бинарной сборки пользователю остаётся лишь слепо доверять выполнившему сборку сервису.
Примечательно, что ни одна свободная лицензия не учитывает данное обстоятельство не требует указания точных параметров сборочного инструментария при публикации бинарных версий. В качестве одного из способов решения проблемы называется включение в состав исполняемого файла информации о компонентах окружения, в котором была произведена сборка.
URL: http://blogs.kde.org/2013/06/19/really-source-code-software
Новость: http://www.opennet.me/opennews/art.shtml?num=37246
Одному из разработчиков KDE конкретно нехер делать. покажите ему где багзилла, что ли.
Obvious fix: Один из разработчиков KDE наконец-то занялся чем-то полезным вместо KDE.
> Obvious fix: Один из разработчиков KDE наконец-то занялся чем-то полезным вместо KDE.Ну что, трололошки, минусов срубили? Потому что нельзя быть такими жирными и глупыми трололошками.
О-хо-хо, ужас-то какой. Со мной, оказывается, 9 человек не согласны и ты вот ещё.
Не так. У 9 с лишним человек твой пост вызвал негативные эмоции. Обычно это значит, что твой пост не только вызывающий, но даже не остроумный.
Ой! Какой позор! А я-то думал, что обычно это означает, что из двух проголосовавших групп человек не согласных со мной на 9 с лишним человек больше.
>А я-то думал, что обычно это означает, что из двух проголосовавших групп человек не согласных со мной на 9 с лишним человек больше.Тогда вы себе противоречите, т.к.:
>>Со мной, оказывается, 9 человек не согласны и ты вот ещё.
О да! Придирайся к моим словам! Придирайся сильнее! Сильнее! Жёстче! Ты же видишь, что в интернете кто-то не прав! Опровергни меня! Опровергни меня полностью!
Вопрос не праздный. Можно ли доверять теперь открытому коду собранному при помощи GCC ))). Если у меня с одинаковых исходников получаются разные бинарники, то как проверяя исходные тексты можно убедиться что мой бинарь им соответствует, а не модифицирован?
Это вопрос человека, слабо понимающего проблему сабжа.
>Можно ли доверять теперь открытому коду собранному при помощи GCC ))). Если у меняНе у вас, вот в чём вопрос.
Можно ли доверять сборщикам пакета (бинарного пакета заметь), если у тебя в тех же условиях сборка производит иной результат.
Ну а писать (и перевернуть сабж так), что гцц в тех же условиях (у тебя) производит из одних и техже исходников разный результат — это вообще... ламерство... или как бы это помягче то.
Все гораздо проще как ни когда
Автор/разработчик как бы намекает на то что в Deb все нормалек а вот в сусе и федорке не все так чистоя для серверов собираю только из исходников
это вам не apt-get install / yum install втоптать в клаву
Этот разработчик KDE вызвал у меня очередной приступ паранойи, так что не зря он всё это затеял %)
> Этот разработчик KDE вызвал у меня очередной приступ паранойи, так что не зря он всё это затеял %)У кого-то он, может приступ эпилепсии вызвал. Но в обоих случаях содеянного явно недостаточно для вердикта "не зря".
Ломающие новости! О том, что выпуск CentOS намного задержался как раз из-за трудоемкости воспроизведения сборочной среды RHEL (что требовалось для полной бинарной совместимости), товарищ, видимо, не слышал.Кстати, непонятно, почему свободные лицензии должны включать предлагаемое требование, если его невыполнение ни одну из свобод не нарушают? Может, еще и требование использовать DVCS в лицензию включим?
> непонятно, почему свободные лицензии должны включать предлагаемое требование, если его невыполнение ни одну из свобод не нарушаютвот эти свободы:
[quote]
0. Свобода запускать программу в любых целях (свобода 0).
1. Свобода изучения работы программы и адаптация её к вашим нуждам (свобода 1). Доступ к исходным текстам является необходимым условием.
2. Свобода распространять копии, так что вы можете помочь вашему товарищу (свобода 2).
3. Свобода улучшать программу и публиковать ваши улучшения, так что всё общество выиграет от этого (свобода 3). Доступ к исходным текстам является необходимым условием.
[/quote]если нам дают не те исходные коды которые должны давать -- то по сути НЕ нарушается лишь нулевая свобода :-) ..
а если мы НЕ можем проверить какие исходные коды нам дают (те или не те) -- то с чего это мы должны подумать что в том или ином случае -- нет нарушений свободы?
Непредоставление информации о сборочном окружении никаких свобод не нарушает. А это не то же самое, что и распространение бинарной сборки без соответствующих ей исходных текстов. Разницу видишь? Твои личные подозрения сборщика автоматически виновным в нарушении этих свобод не делает.
Как ты можешь быть уверен, что бинарная сборка собрана из предоставленных тебе текстов?
> Как ты можешь быть уверен, что бинарная сборка собрана из предоставленных тебе
> текстов?А почему это должно его волновать? Если не доверяет - соберет сам из исходников. Вот если поведение собранного окажется отличным от предоставленных бинарников, то это уже повод задуматься об аутентичности исходников.
отличное поведение, будет падать по-разному
Как проверить отличие в поведении, если оно проявляется лишь при определённых погодных условиях на Марсе и только если пришёл сформированный специальным образом файл данных с Венеры? ))
0. разве у них нет пакетов с исходниками?
1. предположим ситуацию: в государстве A, являющимся стратегическим противником гос-ва B, варганят дистры, активно используемые гос-вом B в информационной промышленности, ядрёной энергетике и производстве памперсов. Очевидно, что однажды в офис компании-творца придёт дядя из минобороны гос-ва A, и скажет:
- Не изволите ли, господа любезные, вшпандорить в детище ваше некий бэкдор? Ибо функционал сей позволит нам на противника B из тыла его его же глазами зрить да ситуацию стратегическую пуще разуметь.
Очевидно также, что условия таких предложений обычно не позволяют от них отказываться. Гуантанама у них большая.
Пардон. Пока писал - забыл, про чё писал.
Так вот: бэкдор не должен быть заметен. Потому его код распространять не будут. А вот ежели его в сборку вставить - найти будет гораздо сложнее. (Правда, если найдут - шумиху подымут и дистром пользоваться перестанут.)
Бэкдор и в исходник можно засунуть так, что его не найдут, даже если специально искать будут.
> Бэкдор и в исходник можно засунуть так, что его не найдут, даже
> если специально искать будут.но наверное всё-такие всем очевидно -- что если бекдор НЕ засовывать в исходник -- то найти его будет во много раз сложнее, чем если засовывать?
(или кому-то не очевидно?)
в случае когда бекдоры делаются с имитацией человеческой ошибки ---- и в случае нахождения такого бекдора внутри исходного кода -- отмазка: "ой, простите это я программировал 2 дня подрят и опечатался, пропустил дополнительную проверку".
а в случае когда точно такой же бекдор делается, но изменённый исходный код НЕ публикуется ---- отмазка на много весомее: "ой, простите похоже компилятор допустил ошибку при компилировании в режиме оптимизации". (и эти слова придётся говорить на много реже.. а может быть никогда :))
>> Бэкдор и в исходник можно засунуть так, что его не найдут, даже
> но наверное всё-такие всем очевидно -- что если бекдор НЕ засовывать в
> исходник -- то найти его будет во много раз сложнее, чем
> если засовывать?Если код большой и сложный - вероятности примерно одинаковые (нулевые).
> а в случае когда точно такой же бекдор делается, но изменённый исходный
> код НЕ публикуется ---- отмазка на много весомее: "ой, простите похоже
> компилятор допустил ошибку при компилировании в режиме оптимизации". (и эти слова
> придётся говорить на много реже.. а может быть никогда :))См. недавнюю новость про релиз gzip.
А вот это очень сильно зависит от стиля написания исходного кода и включенных комментариев.
Корректные или дружелюбные или открытые исходники пишутся так, чтобы максимально облегчить скорость понимания того, как работает код.
"Недружелюбный" исходник - сразу будет бросаться в глаза.
Ну и еще можно говорить о степени дружелюбности или недружелюбности языка и среды разработки. Например исходник (конфигурации некоего срока от некоей справочной даты начинались случайным образом в счета вписию) 1С - весьма недружелюбны и без дополнительной проектной документации воспринимаются и анализируются с большими затруднениями. Как-то довелось видеть вредоносную закладку, которая очень хорошо видна, но понять ее смысл - было нелегко. А там всего лишь по истеченываться неверно посчитанные и довольно существенные скидки клиентам. Так человечек из ИТ-отдела заложил месть на случай внезапной потери работы. Пока работал регулярно исправлял нужную дату. Когда ушел, через пару месяцев начались гадкие проблемы.
А вообще-то, самым трудным было доказать то, что это было сделано конкретным человеком.
> А вообще-то, самым трудным было доказать то, что это было сделано конкретным
> человеком.инжой ё один асс. version control systems? не, не слышали, не надо.
> инжой ё один асс. version control systems? не, не слышали, не надо.Не... не надо.
Подобные задачки решаются не техническими методами, а оперативно-следственными. Технические приемы - не более чем подспорье сокращающее время и объем оперативно-следственных работ.
есть мнение, что VCS применяют не только для того, чтобы при случае выяснить, кто виноват. хотя оно и с этим неплохо справляется… если, конечно, контора не шаражка, где в том числе и на админах экономят.
> есть мнение, что VCS применяют не только для того, чтобы при случае
> выяснить, кто виноват. хотя оно и с этим неплохо справляется… если,
> конечно, контора не шаражка, где в том числе и на админах
> экономят.Всё это очень хорошо (вцс и т.п.). Но бывают веселые нюансы. Представьте себе:
1.Изменения внесенные за год-другой до проявления проблем, причем сделанные в рамках официальной заявки по прикручиванию/исправлению той или мелкой функцинальности. И подобных измнений за этот период было несколько десятков.
2. Опционально. Не в этом случае, но в других местах так бывает. Изменения готовятся и отлаживаются где-то в папках разработчиков, которые время от времени вычищаются и списываются с рабочего сервера. А на в рабочий сервер изменения вносятся руководителем отдела (или сисадмином), который перед этим эти изменения как-то проверил и... ничего подозрительного не заметил. Часто ли встречаются сисадмины, которые могут не просто просмотреть, допустим, новые тригеры к БД, но и в полной мере осознать последствия их работы в контексте бизнес-логики реализуемой в этой самой БД?
3. После выявления участка, на котором происходит неприятная хрень, остаются вопросы - появилась ли такая особенность его работы как случайно пропущенный глюк, кто именно обеспечил появление на этом участке этого "глюка", если "глюк" был злоумышленным, то были ли соучастники и т.п.
И вот по последним вопросам ВЦС дает возможность лишь строить предположения и добавить несколько дополнительных версий.
Самое занятное, что подобные ситуации особенно трудно разрешимы в случае когда ИТ ифраструктура обслуживается целой толпой ИТ-отдела в котором введена специализация. В шарашке, в которой пара-тройка человек работают в режиме "и швец и жнец" все оказывается проще. Почему так? Был когда-то нашумевший случай с незаконной (ибо закон запрещал) эвтаназией, которую спроектировал безнадежный больной пользующийся услугами множества ухаживающих за ним людей. Он использовал этих людей "в темную" - каждый выполнял внешне безобидное действие, которые в своей последовательности привели к введению больному смертельного лекарства. В ходе следствия оказалось, что совершено убийство (в контексте существовавшего законодательства) группой людей из которых никому не получается предъявить обвинение в участии в убийстве.Подытожу. В сложных развиваемых системах возможно появление на уровне самих исходников фрагментов, которые в своей совокупности могут помимо основного исполнять некие НЕОЧЕВИДНЫЕ вредоносные функции. Причем установить мотивацию всех создателей этих фрагментов и автора вредоносной функции - затруднительно. По большому счету большинство баг-репортов - подходят под это описание, но лишь некоторые разбираются как злоумышленные. Вспомните-ка шутливый дуализм - "это баг или это фича?". Идеальные преступления - это те, которые никто не подумал даже объявить преступлениями.
> Всё это очень хорошо (вцс и т.п.). Но бывают веселые нюансы. Представьте
> себе:1. ну и что? история куда-то делась, что ли? если да — то виноват однозначно системный администратор.
2. а что, при слиянии бранча разработчика с основной веткой информация о первоначальном авторстве теряется? тогда это говно, а не система управления исходниками. иначе — code reviewer виноват лишь в том, что прошляпил, но фигню запилил однозначно автор.
3. изначально вопрос был в том, «кто запилил». кто запилил — ясно. а дальше можно раскручивать запилившего, а можно просто на него всех собак повесить.впрочем, вся беседа сворачивает в странное русло. получается нечто вроде: «дактилоскопия не позволяет установить мотивы, поэтому дактилоскопия бесполезна.»
> впрочем, вся беседа сворачивает в странное русло. получается нечто вроде: «дактилоскопия
> не позволяет установить мотивы, поэтому дактилоскопия бесполезна.»Не всегда удается пострелять из пушек по воробьям, даже если хочется.
Если говорить про дактилоскопию, то дактилоскопия не устанавливает и не доказывает факт преступления. Она может быть лишь одним из аргументов в цепочке доказательств, а вот создать эту цепочку дактилоскопия не в состоянии.
Теперь по поводу "а можно просто на него всех собак повесить". Очень часто для руководства предприятием крайне важно точно установить кто виноват, а кто не виноват. Иногда даже лучше вообще сделать вид, что ничего не произошло, чем поднять шум, и не раскопать ситуацию до конца. Это в корпорации под названием государство кто-то может практиковать правило - "мужиков бабы еще нарожают" и "незаменимых не бывают". Для предприятий размерами поскромнее и не имеющих возможность тупо у кого-то отобрать то, чего не хватает, приходится оценивать такие скучные вещи как, например, стоимость замены человека со всеми прямыми и косвенными потерями, изменения в мотивациях других сотрудников при том или ином разрешении инцидента и т.п.
С точки зрения того, как должна строиться система близкая к идеальной - Вы правы и я ваше мнение не оспариваю. И для нормальных предприятий основной деятельностью которых являются ИТ-разработки это является нормой. Но вот в жизни других предприятий и организаций по множеству весьма объективных обстоятельств многое строится с некоторыми отклонениями. Пример объективных обстоятельств - поглощение одного предприятия другим, в то время когда у них ИТ-инфраструктура выстроена на весьма различных принципах. В такой ситуации затевается какой-то проект перехода, изминений, которые... растягиваются во времени, в этапах, ... потом обрастают дополнениями и т.д. А все это время предприятие продолжает жить и работать - с тем, что имеется.
Но тут мы, действительно, сильно стали уклоняться от изначальной темы разговора.
> Если говорить про дактилоскопию, то дактилоскопия не устанавливает и не доказывает факт
> преступления. Она может быть лишь одним из аргументов в цепочке доказательств,
> а вот создать эту цепочку дактилоскопия не в состоянии.точно то же можно сказать и про VCS. натурально, у VCS есть и основные функции, помимо такой опциональной.
> Теперь по поводу «а можно просто на него всех собак повесить». Очень
> часто для руководства предприятием крайне важно точно установить кто виноват, а
> кто не виноват.я всего лишь привёл это как один из способов псевдорешения проблемы.
> Но вот в жизни других предприятий и организаций по множеству весьма
> объективных обстоятельств многое строится с некоторыми отклонениями.и зря.
> поглощение одного предприятия другим, в то время когда у
> них ИТ-инфраструктура выстроена на весьма различных принципах. В такой ситуации затевается
> какой-то проект перехода, изминений, которые… растягиваются во времени, в этапах, …
> потом обрастают дополнениями и т.д. А все это время предприятие продолжает
> жить и работать — с тем, что имеется.прямой путь к бардаку. впрочем, эмпирические наблюдения показывают, что чем больше предприятие — тем больший там бардак.
Вижу, что одно без другого сводит на нет предоставление исходного кода. И бинарник не достоин доверия.
> а если мы НЕ можем проверить какие исходные коды нам дают (те
> или не те) -- то с чего это мы должны подумать
> что в том или ином случае -- нет нарушений свободы?Иш, мейнтейнеры пройдохи, тратят свои ресурсы, собирают пакеты, указывают зависимости, подписывают подписями, выкладывают в репозитории, дают все это скачивать, работают с баг репортами, но не предоставляют полной информации о сборочном окружении.
И как им теперь верить?
Обмануть нас хотели - однозначно нарушение свобод!> если нам дают не те исходные коды которые должны давать -- то
> по сути НЕ нарушается лишь нулевая свобода :-) ..Сомневаетесь? Не верьте.
Компилируйте из предоставленных исходников.
Тогда у вас будет твердая уверенность, что бинарник соответствует исходнику.
И не надо разводить паранойю.
> Сомневаетесь? Не верьте.у тебя что -- мир монохромно-чёрнобелый ?
либо 100% сомниваться, либо 100% верить? других вариантов быть не может?
может быть я верю на 99%, а сомниваюсь на 1% ...
> Компилируйте из предоставленных исходников.
> Тогда у вас будет твердая уверенность, что бинарник соответствует исходнику.это ответ в стиле "если не нравится как я делаю -- значит делай сам."
однако если подумать хорошо головой -- то я НЕ говорю о том что мне <это> якобы не нравится, а я говорю о том что я не могу быть уверенным в том нравится ли мне <это> или нет :-) .. разницу чувствуете?
то что я могу сам компилировать -- это я понимаю... но тем не менее -- проблема в том -- КАКИМ ОБРАЗОМ мне можно проверить подлинность ЧУЖОГО бинарника (ЧУЖОГО это значит КОМПИЛИРОВАЛ ЕГО НЕ Я -- это дополнительное пояснение для тех кто вдруг опять захочет мне посоветовать компилировать самому для себя).
более того -- я дополню что иметь возможность проверки -- не обозначает проверять постоянно. может быть првоерять есть необходимость -- не более чем 1 раз из 50 :-) а может и то реже :-) :-) ..
а может быть -- бинарник выглядет более доверяемым, когда не только ментейнер говорит "мамый кланусь, не внэдрял бэкдоров во время компэляции! зачэм обэжаиш, да?", но и когда это подтверждают ещё и 10 других независимых исследователей :-) .., при чём подтверждат более оснвательно чем словами "мэйнтэйнэр, это наш братухэ, он как и мы -- мы ыз одного плэмэни обэзъян.. я обэъяна, ты обэзъяна, мы НЫ когда бэкдоры нэ вныдряем во врэмя компэляции!"
> И не надо разводить паранойю.
а это и не параноя. это уже описанный факт. который изложил выше даже и не я.
> может быть я верю на 99%, а сомниваюсь на 1% ...Ну тогда чего думать изза 1% :)
> говорит "мамый кланусь, не внэдрял бэкдоров во время компэляции! зачэм обэжаиш,
> да?",Кстати, на этом принципе основана безопасность SSL сертификатов.
Diginotar тоже мамой клялся:)
> Кстати, на этом принципе основана безопасность SSL сертификатов.
> Diginotar тоже мамой клялся:)нет там никакой безопасности. система безопасности, скомпрометированная хотя бы один раз, безопасной не является. до первого фэйла можно было только предполагать, что они продают бесполезные фантики, а теперь можно со спокойной уверенностью говорить, что действительно: продают бесполезные фантики. лохотрон такой лохотрон.
> Может, еще и требование использовать DVCS в лицензию включим?Кстати, отличная идея. Из-за мазохизма разработчиков окружающие страдать не обязаны.
Этот неловкий момент... когда понимаешь, что публикуемые уже 10 лет исходники програмы имею слабое отношение к ее бинарной сборке при видимом соблюдении лицензии...
Потенциальные риски очевидны или еще нет?
> Этот неловкий момент... когда понимаешь, что публикуемые уже 10 лет исходники програмы
> имею слабое отношение к ее бинарной сборке при видимом соблюдении лицензии...Вот за что мы любим альт и hasher.
В каждой бочке затычка.
> В каждой бочке затычка.Завидовать нехорошо.
>> В каждой бочке затычка.
> Завидовать нехорошо.Ты всё на зависть списываешь? Нехорошо по себе других судить.
> Ты всё на зависть списываешь? Нехорошо по себе других судить.Вошел под другим логином и типа пытаешься стрелки перевести? Ну-ну.
В статье «Reflections on Trusting Trust» Кена Томпсона этот вопрос рассматривается во взаимосвязи возможностей компиляторов и закладок в программе, выявляющей глубину проблемы. Факт множества обнаруживаемых уязвимостей может быть интепретирован как следствие применения рассмотренной в статье возможности в некоторых программах. Интерес в таком случае представляет комплексное и нетривиальное исследование кода компиляторов и программ.
(перевод/копипаста?) "Рассмотренной в статье возможности" чего?
1. http://cm.bell-labs.com/who/ken/trust.html
2. Возможности, рассмотренной в статье.
>> Этот неловкий момент... когда понимаешь, что публикуемые уже 10 лет исходники програмы
>> имею слабое отношение к ее бинарной сборке при видимом соблюдении лицензии...
> Вот за что мы любим альт и hasher.Пожалуйста, вкратце поясните как это в альте работает?
http://www.altlinux.org/Руководство_по_hasher
src.srpm пакет содержит в себе список сборочных зависимостей.hasher устанавливает все необходимые пакеты в chroot, и производит сборку внутри него. В итоге каждый пакет собирается в минимальном окружении, содержащем только необходимые для сборки пакеты и их зависимости.
А в архиве сборочной системы сохраняется полный список сборки, в том числе полный список установленных в chroot пакетов, вместе с их версиями.
Сборка пакетов в дистрибутив делается исключительно через эту сборочную среду -- мантейнер заливает только исходный пакет.
Таким образом сборочная среда гарантированно воспроизводима.
В федоровском mock всё происходит точно так же.
И в дебиановском pbuilder. Да это у всех дистров одинаково.Просто альтовцы, ничего не зная о других решениях, изобрели собственный велосипед и по-детски им гордятся :)
> Просто альтовцы, ничего не зная о других решениях, изобрели собственный велосипед и по-детски им гордятся :)Причём изобрели его существенно раньше, чем появились "другие решения" и по-детски начали использовать его для сборки всех пакетов для всех своих репозиториев.
В те времена, когда альтлинупс уже активно использовал hasher, в котором собирались вообще все пакеты для любого репозитория альтлинупс, аффтары "других решений" собирали свои пакеты хрен знает как и хрен знает в какой сборочной среде. Более того, они и сейчас продолжают так делать, даже при наличии OBS и аналогов.
остается только вопрос - как они умудряются собрать пакеты когда build dep в шапке не всегда полный.
Точно также это делается в OBS.
Ну, кроме chroot с нужными версиями могут быть и еще всякие приколы.Собственно, упомянутый в статье вариант с прописыванием в бинарь времени сборки вполне меняет содержимое. Хотя, я вот навскидку не вспомню, не для того ли в альте faketime применяется?
А чем они лучше? Такая же бинарщина, потенциально напичканная троянами.
Зачем тебе бинарники если есть исходники?
Перефразируя товарища выше - вот за что мы любим генту :) Если возникли сомнения - посмотрю-ка, из чего это я там собираю?
> Перефразируя товарища выше - вот за что мы любим генту :) Если
> возникли сомнения - посмотрю-ка, из чего это я там собираю?Если ебилд возьмет затрояненный код - кто это заметит?
Тот кому надо — заметит.
Вообще tgz беруться с зеркалов генты.
и только пакеты из разряда live-rebuild (вида xxx-xx/xxxx-9999, которые ещё нужно дважды размаскировать), а также из оверлеев/лаймана и различные бета/альфы грешат загрузкой сырцов с аппстрима и их опять же нужно размаскировать.короче, ситуация как и в бинарных — если сам захотел установить, то никто тебе запретить подключить левую ппа-репу (или скачать с любой вирусной шары в случае винды) не сможет.
ну а в такой ситуации конечно кричать про pешето может только достойный представитель админства локалхоста.
та самая проблема о которой все знают, но при этом всем хочется думать будто проблемы нет.....а проблема-то довольно серъёзная...
серъёзная хотябы потому что не понятно с какого бока надо начинать её решать :-)
всё понятно как её решать - уютной гентой.
> всё понятно как её решать - уютной гентой.В последние годы гента стала неуютной, и вообще катится в это самое :(
да что Вы? и в чём же это проявляется?лично для меня гента - уютнейшая ОСь.
опять же, сам себе режиссёр:
надо системд? - пожалуйста. хочешь опенрц - вот возьми.
хочешь непомуки-аконади - забирай. не хочешь - выпиливай.
не хочешь обновлять на новую версию пакет - поставь маску.и т.п.
и никакие революции типа "systemd"изации (не разбирался, потому не осуждаю), у"mir"отворения вроде и не задевают. хочешь - ешь. не хочешь - не ешь.
на самом деле есть немного негатива.. падает кол-во вовлечённых разработчиков (если сравнивать с пиком популярности проекта лет 8-10 назад) и это сказывается на качестве и оперативности поддержки.
> на самом деле есть немного негатива.. падает кол-во вовлечённых разработчиков (если сравнивать
> с пиком популярности проекта лет 8-10 назад) и это сказывается на
> качестве и оперативности поддержки.Дистрибутив прошел ту критическую точку развития, инфраструктура стабилизировалась, сейчас естественная убыль разработчиков. Просто раньше куча разработчиков оперативно обновляла дерево портаж, теперь вся эта куча растянулась по группам которые занимаются своими оверлеями, а в портаж попадает то что уже проверено и востребовано.
> Дистрибутив прошел ту критическую точку развития,Скорее, прошел точку невозврата.
И то, что вместо пакетного менджера там жутко тормозящая питонятина (оно даже хуже, чем yum!), никого уже не беспокоит. Все ушли.
Вот и хорошо что ушли.
Те, кто сравнивает emerge c yum точно должен уйти.
Таких похтерингов нам не надо.
emerge однозначно похтеринг писал, на заре своей карьеры :)
и тем не менее это лучшая система сборки и уcтановки из сырцов.
предложите лучше? или как всегда? :D
> и тем не менее это лучшая система сборки и уcтановки из сырцов.Всего лишь неудачная и тормозная пародия на порты фри :)
> Всего лишь неудачная и тормозная пародия на порты фри :)Скорее, это вы - неудачная и жирная пародия на форумное трололо.
> Вот и хорошо что ушли.
> Те, кто сравнивает emerge c yum точно должен уйти.
> Таких похтерингов нам не надо.Любой, кто сообщает о багах и тормозах - похтеринг и должен уйти.
Гента идеальна по определению, любые багрепорты - злобные выдумки врагов.
да-да! опеннет — это филиал багтреккера генты! а набор слабосвязанных слов — исчерпывающий отчёт об ошибке.зыж
должен вас разочаровать, ваш якобы сарказм тянет всего-лишь на ма-а-аленькую бульку в луже.
> да-да! опеннет — это филиал багтреккера генты! а набор слабосвязанных слов —
> исчерпывающий отчёт об ошибке.Всякий гентушник знает, что emerge, portage и прочая хрень дико тормозят. Но возмущаться не будет, потому что боится прослыть похтерингом. Лучше тихо молчать в тряпочку и завидовать дебианщикам или федоровцам (кому как нравится).
У шаблон давно разорван или только что?Ау!
Если бы я
>тихо молчать в тряпочку и завидовать дебианщикам или федоровцам (кому как нравится).я бы дебиан или федору ПОСТАВИЛ.
это даже не айзен-выбор — бсд_vs_гпл.
Над слоупоками из дебиана я ржу, а с вечно поломаной федорой, где любой хавту начинаетя с "1. отключите selinux" ржу до слёз.
>вечно поломаной федоройУгу, жги дальше, хавту блин. Там все просто работает безщ всяких хавту, это понятие изжило себя по определению. Вот купил ты батон хлеба и что - к нему хавту читаешь? Впрочем было одно, ходил список что надо делать чтобы проприетарщину впилить в свободнуб федору. Но не проще ли тогда венду поставить?
> У шаблон давно разорван или только что?По-моему, он разорван у тебя.
> Ау!
> Если бы я
>>тихо молчать в тряпочку и завидовать дебианщикам или федоровцам (кому как нравится).
> я бы дебиан или федору ПОСТАВИЛ.Завидуешь ты им только когда хочешь, чтобы все работало.
Но чаще ты все-таки хочешь, чтобы что-нибудь не работало, и с системой можно было бы от души потрахаться.И не спрашивай, откуда я это знаю. Вы, гентушники, очень похожи. Какого не возьми - вылезет та же самая логика мотивации.
Мало плюсиков наставил. :D
Ох уж эти дети.
> лично для меня гента - уютнейшая ОСь.
> опять же, сам себе режиссёр:
> надо системд? - пожалуйста. хочешь опенрц - вот возьми.
> хочешь непомуки-аконади - забирай. не хочешь - выпиливай.
> не хочешь обновлять на новую версию пакет - поставь маску.Ну, раз уж вы затронули тему openrc...
https://bugs.gentoo.org/show_bug.cgi?id=391945Сколько лет уже исправить не могут. А все почему? Потому что среди разработчиков ключевого системного компонента не осталось ни одного сишника, только гуманитарии, слегка умеющие костылять на шелле.
во-первых — вот как раз в опенрк половина (если не больше) это шел-скрипты.
во-вторых — современные тенденции, аля
>We are looking at moving the code that handles migrating /var/{lock,run}to /run into bootmisc
и прочий системд, удев и тд очень сильно затрудняют процесс воспроизводства ошибки, т.к.:
в-третьих — у меня вот к примеру параллел=йес работает и не зависает.
поэтому никак не могу помочь ни как си-шник, ни как скриптовик.
в-четвёртых — подобных открытых багов есть в любом дистрибутиве. в конце-концов это не платинум-поддержка, чтобы я к примеру все дела бросил и начал разбираться в чужих проблемах. вот будет у меня такая же ситуация, разбирусь и отпишу решение.
а пока… вот не могу никак победить зависание systemd при выключении — tmp.mount mount procress exited, code=exited status=32
Filed unmounting Temporary Directory.
Так что, как говорится, мне бы ваши проблемы.
(и да! с теми же сервисами/демонами опенрк грузится на 0.2-0.3 секунды дольше. где профит от всей этой кутерьмы то?)
> во-первых — вот как раз в опенрк половина (если не больше) это шел-скрипты.А вторую половину можно и не фиксить. Достаточно громко кричать "works for me!"
> во-вторых — современные тенденции, аля
>>We are looking at moving the code that handles migrating /var/{lock,run}
> to /run into bootmisc
> и прочий системд, удев и тд очень сильно затрудняют процесс воспроизводства ошибки,А падение рубля этот процесс не затрудняет? Или ипотечный кризис в США?
> а пока… вот не могу никак победить зависание systemd при выключении —
> tmp.mount mount procress exited, code=exited status=32
> Filed unmounting Temporary Directory.Fauled because we are using /
У тебя поддельный systemd :)> Так что, как говорится, мне бы ваши проблемы.
> (и да! с теми же сервисами/демонами опенрк грузится на 0.2-0.3 секунды дольше.
> где профит от всей этой кутерьмы то?)Ни разу не борцун на systemd, но чисто чтобы тебе попец прижечь - держи https://www.youtube.com/watch?feature=player_embedded&v=4NXM...
>Ни разу не борцун на systemd, но чисто чтобы тебе попец прижечь - держи https://www.youtube.com/watch?feature=player_embedded&v=4NXM...Это ты себе, дружочек, больше похоже что яйца прищемил. :D
Зашибись, "works for me!" заменил на youtube.com ("works for they?") и доказал, что проблема решена! Вернее её вообще нет! Ай, малаца!!!
И корона не жмёт, и падение рубля шорты не натирает.
> Это ты себе, дружочек, больше похоже что яйца прищемил. :D
> Зашибись, "works for me!" заменил на youtube.com ("works for they?") и доказал,
> что проблема решена! Вернее её вообще нет! Ай, малаца!!!Судя по бессвязности и общей бредовости твоей речи, видео тебя шокировало чересчур сильно.
Я, конечно, не имею ничего против умеренного стеба на убогими, но до психушки доводить тебя не хотел. Извини :(
>Судя по бессвязности... я разговаривал ну с ОЧЕНЬ молодым человеком :D
Зыж
Накрутка плюсиков помогла не плакоть то? :D
гента решает проблему бэкдор в исходниках? не так давно светились и такие варианты.
> гента решает проблему бэкдор в исходниках? не так давно светились и такие варианты.Эту проблему никто не может решить, даже openbsd.
об чём и речь.
> всё понятно как её решать - уютной гентой.Тут ниже некто mva выразил мнение, что троян может быть подкинут на этапе сборки. Например, через gcc.
Это как с перепрошивкой биоса - он производится под контролем самого биоса, поэтому вшитый туда зловред может на лету заразить и новую прошивку.
Я думаю, что ответственные дистрибутивы уже давно разобрались, как надо решать такие проблемы. Вот в том же Debian - этот вопрос решен при помощи pbuilder. И видите какая лепота - всего 20 байт отличий. Вот она, стабильность.PS: знающие люди рассказывали, что у ALT Linux тоже есть нечто подобное.
Практически у любого дистрибутива есть собственная инфраструктура для сборки пакетов.
Кроме, разумеется, всяких клонов убунты, отличающихся только обоями.
> PS: знающие люди рассказывали, что у ALT Linux тоже есть нечто подобное.Да.
В дебиане/убунте она есть, в центосе/федоре она есть, в сусе она есть, а в альте она ЕСТЬ!
Чувствуете разницу?
> Чувствуете разницу?Нет.
>> Чувствуете разницу?
> Нет.Скажу проще: свой велосипед всегда лучше (принципиально инновационней) апстримного.
> Чувствуете разницу?Не, так не чувствую. А вот что в hasher пакеты при формировании чрута не от честного рута устанавливаются (и таким образом ситуация "рут в чруте" обходится), в отличие от -- чувствую.
ftp://ftp.altlinux.org/pub/people/ldv/hasher/thesis-2004.html
Есть и другие интересные отличия.
>> Чувствуете разницу?
> Не, так не чувствую. А вот что в hasher пакеты при
> формировании чрута не от честного рута устанавливаются (и таким образом ситуация
> "рут в чруте" обходится), в отличие от -- чувствую.В OBS на выбор: chroot, LXC, XEN, KVM.
> В OBS на выбор: chrootИ в ём root?
> LXC
Не шибко отличается.
> XEN, KVM.
Вес сам знаешь.
>> В OBS на выбор: chroot
> И в ём root?
>> LXC
> Не шибко отличается.Откуда ты знаешь?
>> XEN, KVM.
> Вес сам знаешь.Вес в большей степени определяется размером минимальной сборочной среды. Ты давно её не замерял - она огромна и 2/3 там лишние.
А то, что в случае с XEN или KVM можно ещё необходимое ядро указывать (а не то, что "уже есть и не заменишь") - это только плюс для некоторых случаев использования.
>>> В OBS на выбор: chroot
>> И в ём root?
>>> LXC
>> Не шибко отличается.
> Откуда ты знаешь?lwn.net
>>> XEN, KVM.
>> Вес сам знаешь.
> Вес в большей степени определяется размером минимальной сборочной среды.Не только, ещё startup cost.
> Ты давно её не замерял - она огромна и 2/3 там лишние.
Я вообще-то про opensuse-шную говорил, или ты тоже?
> А то, что в случае с XEN или KVM можно ещё необходимое
> ядро указывать (а не то, что "уже есть и не заменишь")
> - это только плюс для некоторых случаев использования.Это да.
> > LXC
> Не шибко отличается.На моём опыте, очень даже отличается.
>> > LXC
>> Не шибко отличается.
> На моём опыте, очень даже отличается.Шигopин, как всегда, не читал, но осуждает.
> Шигopин, как всегда, не читал, но осуждает.Речь была о чруте vs lxc и с ними обоими я работал, а Вам права высказываться за себя не давал.
>И в ём root?Нет. В для сборки используется непривилегированный пользователь abuild.
> с какого бока надо начинать её
> решать :-)Начните с отсюда :)
http://www.freebsd.org/about.html
Как вариант, цифровая подпись (как strong name assembly в .NET).
Давайте тогда уже и сборочное окружение упаковывать в каждый исполняемый файл ;)
> Давайте тогда уже и сборочное окружение упаковывать в каждый исполняемый файл ;)А давайте в «Makefile» файл? Не?
Хорошая идея, FatELF уже есть, так что пусть будет SuperFatELF.
Это будет уже FatC.
> Хорошая идея, FatELF уже есть, так что пусть будет SuperFatELF."Ты же лопнешь, деточка!"
А зачем это нужно?
Это нужно тем, у кого паранойя фонтаном бьёт на тему: "А не запихал ли программёр в скомпилированный вариант бэкдоров и червей..."
> Это нужно тем, у кого паранойя фонтаном бьёт на тему: "А не
> запихал ли программёр в скомпилированный вариант бэкдоров и червей..."Бэкдоров и червей и в исходниках можно насовать так, что хрен найдешь. Вон, openbsd-шники так до конца и не выяснили, подсадило ли им трояна ЦРУ или нет. Да и то, шум начался только после того, как кто-то информацию об этом слил, через десяток-то лет!
Какое-нибудь хитрое переполнение буфера на стыке подсистем, возникающее с специфичных случаях, и никто бэкдор не найдет, кроме как, разве что, случайно.
А ведь про бэкдоры в Linux до сих пор пока ещё никто ничего и не слил.Все понимают какой удар это нанесёт по Linux и открытому ПО в целом, это не какой то там мелкий и никому ненужный OpenBSD.
Так что даже если разрабы Linux и получат такую информацию, вряд ли поспешат её открывать всему миру.
> А ведь про бэкдоры в Linux до сих пор пока ещё никто
> ничего и не слил.
> Все понимают какой удар это нанесёт по Linux и открытому ПО в
> целом, это не какой то там мелкий и никому ненужный OpenBSD.
> Так что даже если разрабы Linux и получат такую информацию, вряд ли
> поспешат её открывать всему миру.Кхе-кхе. Было уже, находили. Крупные туда не пропустят, а мелкие - было пару раз, правятся за пару минут, причём ещё неясно, не опечатка ли это была. Что-то там user=root, вместо user==root такое было.
И ведь не скрыли ;-) (что с публичным гитом вряд ли вообще возможно).
это не паранойя, а реальность. за новостями нужно следить, а не кукарекать со своей колокольни.
> это не паранойя, а реальность. за новостями нужно следить, а не кукарекать со своей колокольни.Реальность пока такова, что за каждым следить все еще накладно.
Чтобы за тобой начали наблюдать - надо это заслужить.
> Реальность пока такова, что за каждым следить все еще накладно.
> Чтобы за тобой начали наблюдать - надо это заслужить.Вообще, здесь очень много наивных честолюбивых молодых людей, которые мнят себя врагами государства №1 и во сне видят, как за ними гоняется вся королевская конница и вся королевская рать.
>мнят себя врагами государства...есть и такие. это у тшедушных и мало из себя представляющих персон такое заболевание весьма распространено. а в виртуальной реальности можно особенно сильно зеленые пузыри понадувать.
>> Реальность пока такова, что за каждым следить все еще накладно.
>> Чтобы за тобой начали наблюдать - надо это заслужить.
> Вообще, здесь очень много наивных честолюбивых молодых людей, которые мнят себя врагами
> государства №1 и во сне видят, как за ними гоняется вся
> королевская конница и вся королевская рать.Дело не в том, следят или не следят. А в том, могут следить или нет.
1.) Чисто психически очень неприятно, когда у тебя нет принципиальной возможности жить private жизнью.
2.) Страшно за мир вокруг, когда всё обстоит именно так, как оно и обстоит. Будешь неугоден кому-то не тому, а у них будет возможность делать что угодно с твоей частной жизнью. Хотелось бы защитить мир от такого.
3.) И так далее в подобном духе.Неужели это разжёвывать надо?
Просто у узкого круга людей появляются права и возможности, которых у них быть не должно. Только это и беспокоит.
> 1.) Чисто психически очень неприятно, когда у тебя нет принципиальной возможности жить
> private жизнью.
> 2.) Страшно за мир вокруг, когда всё обстоит именно так, как оно
> и обстоит. Будешь неугоден кому-то не тому, а у них будет
> возможность делать что угодно с твоей частной жизнью. Хотелось бы защитить
> мир от такого.
> 3.) И так далее в подобном духе.Общество идет к состоянию открытости, когда все знают про всех почти все.
И на чьи-то там комплексы объективным историческим процессам плевать с высокой колокольни.
за каждым и не следят. с чего вы это взяли? а если подумать на шажочек вперед, зная, какую систему использует цель? бэкдоры даже в сетевухи и принтеры встраивают. там, наверное, тоже всей гурьбой заслужили такой нездоровый интерес?
> за каждым и не следят. с чего вы это взяли? а если
> подумать на шажочек вперед, зная, какую систему использует цель? бэкдоры даже
> в сетевухи и принтеры встраиваютПруфлинк?
местный поиск не осилил?
> местный поиск не осилил?Всегда умиляют такие высказывания "найди САМ, доказательства МОЕЙ правоты"
а ходить далеко не нужно, собственно. умиляйся далее
и это не доказательство МОЕЙ правоты, а просто информация из новостной ленты. 2010 и 2012 годы.
> Всегда умиляют такие высказывания "найди САМ, доказательства МОЕЙ правоты"Просто от вас предполагается минимальный уровень интеллигентности и эрудированности - раз уж ходите на айтишный форум, то наверняка хоть краем глаза следите за айтишными новостями.
>> Всегда умиляют такие высказывания «найди САМ, доказательства МОЕЙ правоты»
> Просто от вас предполагается минимальный уровень интеллигентности и эрудированностинет. предполагается, что оппонент:
а) не пойдёт искать: тогда можно сказать, что он — ленивое чмо;
б) пойдёт искать и найдёт что-то не то: тогда можно сказать, что он идиот;
в) пойдёт искать и найдёт то, что идёт вразрез с утверждением (или ничего не найдёт): тогда можно сказать, что у него руки из жопы и искать он не умеет.
сплошные профиты.приличные же люди в подобных случаях дают если и не ссылку, то ключевые слова для поиска, которые почти однозначно приводят к нужному результату.
за исключением тех случаев, когда ключевые слова для поиска более чем очевидны. как мне думается.
человек же хотел пруфы на бэкдоры в принтерах и сетевых картах. ничего ведь дико сложного поискать отдельно тему про принтеры, отдельно - про сетевые карты. тем более, эти новости вызвали большой резонанс в своё время не только здесь.
> человек же хотел пруфы на бэкдоры в принтерах$гугль://цветной принтер секретная печать
> за исключением тех случаев, когда ключевые слова для поиска более чем очевидны.это не тот случай. оппонент явно имел в виду нечто конкретное. а что — угадайте, дескать, сами. а не угадали — дураки и плохие телепаты.
заметь, что всей этой бесполезной дискуссии можно было избежать, приведя всего пару линков.
лично я считаю, что абсолютное большинство возгалсов "пруфлинк" является примитивным вбросом. даже если чел приводит ссылки на источники, то срач имеет место продолжение на новом витке. х.з. мое мнение, конечно. у каждого правда своя ;)
тогда можно говорить уже более конкретно, разбирая материал по линкам. и для разумных наблюдателей в невыгодной позиции оказывается уже тот, кто требовал пруфов.
нет. всё гораздо прозаичнее. в такие моменты вспоминается народная мудрость про бисер.
> Реальность пока такова, что за каждым следить все еще накладно.Ну, это пока…
В 9 случаях из 10 ты попадаешь не потому, что заслужил, а потому что в ненужное время в ненужном месте оказался.Десять лет назад ты ходила четыре месяца на семинар с одним старшим научным сотрудником, а теперь он стал зам. министра, и его первый-второй-третий круги знакомств решили пошерстить на предмет чего-нибудь интересного.
У тебя порылись в компьютере, интересного для себя ничего не нашли, но нашли странную зарплатную ведомость и кинули ее налоговикам - просто из злости, что зря на тебя потратили время и остатки мозгов.
Ты собиралась замуж, в свадебное путешествие и рожать ребенка, а получила полугодовые вместо этого терки с налоговым ведомством.
(Реальный случай. И сотни таких).
так живут же по принципу Фомы неверующего. пока такое с ними не произойдет - в природе не может существовать. доходит только в случае оставшегося следа от пинка на седалище. в остальных случаях им так жить проще. что ж поделать?
> Это нужно тем, у кого паранойя фонтаном бьёт на тему: "А не запихал ли программёр в скомпилированный вариант бэкдоров и червей..."Месье настолько неинформирован, что пропустил несколько инцидентов подобного?
Проверка нужна хотя бы для удостоверения, что бинари не подменили. Так же, когда в пакете происходит глюк, можно проверить, что у авторов стоит такой же бинарь и ошибка воспроизводима.Хотя на деле, конечно, всё сложнее - разные архитектуры, ЦПУ, версии компилера, вплоть до один собирает shared libs, а другой всё в статику.
Кстати, зачем вообще в исполняемый бинарник пихать время его сборки?
Бинарники должны лежать в пакетах, а там есть и время, и подпись.
Открыл /usr/bin и /usr/lib.У меня не лежат.
> Кстати, зачем вообще в исполняемый бинарник пихать время его сборки?потому что strip не любят.
Юзайте системы со сборкой из исходников :-D Gentoo, FreeBSD, частично Archlinux
> Юзайте системы со сборкой из исходников :-D Gentoo, FreeBSD, частично ArchlinuxЩаз. Там как раз шансов огрести уникальную (и практически невоспроизводимую) сборочную систему куда больше.
Обсуждаемая проблема: невозможность быть уверенным, что установленный софт действительно соответствует тому коду, который открыт. В случае source-based дистров и FreeBSD такой проблемы нет.
> Обсуждаемая проблема: невозможность быть уверенным, что установленный софт действительно
> соответствует тому коду, который открыт. В случае source-based дистров и FreeBSD
> такой проблемы нет.Зато там гораздо острее стоит проблема подмены исходного кода (потому что он тянется с апстримных сайтов, обычно без проверки подписей).
В отличие от бинарных дистрибутивов, где код качают сами мейнтейнеры, и они же в нем регулярно ковыряются, а потом выкладывают подписанные архивы и пакеты в подконтрольных им репах.
>Зато там гораздо острее стоит проблема подмены исходного кода
>(потому что он тянется с апстримных сайтов,
>обычно без проверки подписей).Во FreeBSD хэшсуммы всех сырцов хранятся в соответствующих каталогах портов. Обновления в эти каталоги доставляются portsnap в подписанном виде.
> потому что он тянется с апстримных сайтов, обычно без проверки подписейи не стыдно врать-то? все там подписано
Во FreeBSD безопасность зависит только от мэйнтейнера порта. В Gentoo аналогично. Если исходники подменили на сайтах до создания порт или портежа, то при установке вылетит ошибка. Бинарные дистрибутивы с тем же успехом соберут кривой бинарник. В сабжах получите тот бинарник из которого собрали без бзиков упаковщиков. А то, что меняют можно увидеть в патчах исходников, которые обычно маленькие по объёму и лежат на виду.
ЩИТО?!?
Вообще-то там и контрольные суммы проверяются (в т.ч. можно и GPG, если захотеть), и сами манифесты частенько подписываются GPG-ключами мейнтейнеров
> Обсуждаемая проблема: невозможность быть уверенным, что установленный софт действительно
> соответствует тому коду, который открыт. В случае source-based дистров и FreeBSD
> такой проблемы нет.Чисто гипотетически. Если Вам досталась система от другого сис. админа, то что Вы будете делать, пересобирать всю систему, чтобы убедиться, что в бинарники ничего не подмешано?
> Вы будете делать, пересобирать всю систему, чтобы убедиться, что в бинарники
> ничего не подмешано?На практике люди даже пароли не меняют на серверах, а все сбои происходят потому что витуха проложена вместе с линией 220В
>> Вы будете делать, пересобирать всю систему, чтобы убедиться, что в бинарники
>> ничего не подмешано?
> На практике люди даже пароли не меняют на серверах, а все сбои
> происходят потому что витуха проложена вместе с линией 220ВНу, никто не ограничивает свободы поменять пароли, или класть "витуху" правильно. А вот проверить соответствие бинарников и исходного кода - это уже проблема в source-based системах, IMHO.
Ужас какой, как так можно - всю систему пересобирать... Порядочные девушки так не делают!
А главное - не поможет ведь.
Если зловред встроен непосредственно в компилятор и заражает все собираемые файлы - поможет только полная переустановка. И то, если предположить, что в твоем образе компилятор идет без зловреда (что, вообще говоря, гарантировать нельзя).А если предположить, что зловред прописался в BIOS...
Внезапно, кроме зловредов, в наследство можно получить и другие, но тоже "веселые" вещи. Но это уже таки да, оффтоп. Просто меня забавляет новое поколение "одминов", для которых пересборка системы является чем-то вроде сеанса черной магии. В старые добрые времена это была совершенно рядовая операция.
> новое поколение "одминов", для которых пересборка системы является чем-то вроде сеанса
> черной магии.Это Вы про кого, например?
> Там как раз шансов огрести уникальную (и практически невоспроизводимую) сборочную систему куда больше.Ну, таки да. Но во многом за это в овете использование autotools/libtools.
> Для openSUSE и Fedora не удалось достигнуть повторяемости или хотя бы объяснить причину значительных различий.prelink посчитали?
>> Для openSUSE и Fedora не удалось достигнуть повторяемости или хотя бы объяснить причину значительных различий.
> prelink посчитали?Видимо, автор исследования такого умного слова не знал.
В свое время, на заре моей админской карьеры, эта штука тоже стала для меня очень веселым сюрпризом.
Она всегда встаёт сюрпризом но только в одном случае — после апдэйта глибц.Зыж
Кстати, в какой-то период времени понял что прелинк то мне и не nужен.
Никто не замечал? Правда и винт у меня гибридный, ну а на серверах никогда и не использовал.
> Она всегда встаёт сюрпризом но только в одном случае — после апдэйта глибц.Очевидно, сверять хеши файлов в системе и тех же файлов в пакете вам никогда не приходило в голову.
1. У меня генту. Ещё нужны какие-то пояснения?
2. Это не имеет никакого отношения к указанным сюрпризам прелинка в моей фразе, которую вы любезно процитировали. Вообще. :D
Зыж
И ещё (для умников из бинарных дистров начавших ветку), после распаковки и установки бинарного пакета хэш будет идентичен содержимому пакета. И знаете почему?
Потому что прелинк его обработает только в кроне. В большинсте дистров раз в сутки (к примеру в районе 4 часов утра. по локальному времени).
Вероятность подсчёта хэшей в установленном из пакета ПО и собранном из сырцов в такой именно момент крайне ничтожна.
Нужно быть ещё тем везучим слоупоком.
Ззыж
А хэши я считаю. Ежедневно. Но совершенно по другой причине — проверка на подозрительные изменения в локальных фс.
В альте тоже помнится это есть из коробки.
> Потому что прелинк его обработает только в кроне. В большинсте дистров раз в сутки (к примеру в районе 4 часов утра. по локальному времени).+. Анонимы нынче какие-то тупые пошли.
> +. Анонимы нынче какие-то тупые пошли.А то ж! Сплошь гентушники.
> Вероятность подсчёта хэшей в установленном из пакета ПО и собранном из сырцов
> в такой именно момент крайне ничтожна.Автор этого "исследования" запросто мог взять один файл не из пакета, а из установленной системы. "Ну действительно, зачем распаковывать, возьму из /bin, что ему будет" :)
> Автор этого "исследования" запросто мог взять один файл не из пакета, а
> из установленной системы. "Ну действительно, зачем распаковывать, возьму из /bin, что
> ему будет" :)Кстати, вон ниже человек с прямыми руками воспроизвел эксперимент. И у него - сюрприз, сюрприз! - все сошлось.
>Автор этого "иссл…А вот к автору я не имею никакого отношения:D
Для этого у меня нет ни достаточной информации, ни желания разбираться в ней.
Может у него под федорой вообще битый винт? Может этот tar вообще не работоспособный? Х/з.
(но по ссылке, к примеру федора, была только что установлена через нетинстал в минимум)зыж
Тут всё больше 2-х(максимум3-х)-сторонние отношения-пикеровки между авторами комментариев по поводу прелинков и прочих хэшей.
Спрашивайте у эрэфийских выдавателей сертификатов — они вон винду вовсю для применения в госорганизациях сертифицируют, исходные тексты узрев. Этаким убер-спецам какой-то там пингвин вообще на один зуб.
Если нет доверия к бинарной сборке, то для проверки нужно собрать самому из исходников. Внимание вопрос: зачем было качать бинарную сборку?
А если эта бинарная сборка нужна больше одного раза? Например 2 или 1000?
> А если эта бинарная сборка нужна больше одного раза? Например 2 или 1000?Собрал пакет - выложи его в локальную репу, делов-то.
> Если нет доверия к бинарной сборке, то для проверки нужно собрать самому
> из исходников. Внимание вопрос: зачем было качать бинарную сборку?Например, пересобрать libreoffice - не самое быстрое занятие, даже в генту проще готовые бинарники из калькулейта вытянуть, чем вешать свой недобук на пару суток.
Учитывая глобальные тенденции к уходу на менее мощные, но более энергоэффективные железки, проблема доверия к бинарникам может быть актуальной.
> Например, пересобрать libreoffice - не самое быстрое занятие, даже в генту проще
> готовые бинарники из калькулейта вытянуть, чем вешать свой недобук на пару
> суток.А может, просто не стоит пихать генту туда, где ее сильные стороны не актуальны, а недостатки - очень даже?
А не надо поддерживать дурацкие тенденции. Если не хотите остаться с тонким клиентом в рабстве у предоставителя услуг.
> А не надо поддерживать дурацкие тенденции. Если не хотите остаться с тонким
> клиентом в рабстве у предоставителя услуг.То, что персонально вы сейчас в рабстве у вашего интернет-провайдера, вас, видимо, не очень беспокоит.
>> А не надо поддерживать дурацкие тенденции. Если не хотите остаться с тонким
>> клиентом в рабстве у предоставителя услуг.
> То, что персонально вы сейчас в рабстве у вашего интернет-провайдера, вас, видимо,
> не очень беспокоит.Некорректное сравнение.
кстати, корректное. Не надо лицемерить.
> кстати, корректное. Не надо лицемерить.Без лицемерия не будет нормальной демагогии.
А без демагогии он ничего не докажет.
Выключил в биосе сетевуху - комп работать не перестал. Повторишь тоже самое с thin client - приходи.
> Выключил в биосе сетевуху - комп работать не перестал."Выставил в настройках троянца не отправлять мои личные данные куда попало. Чувствую себя в безопасности."
Умница. Но лучше снеси свой оффтопик и поставь хотя бы бyбунту.
Давно уже задавался этим вопросом, но проверить самому руки не доходили. Спасибо Одному-из-разработчиков-KDE за внесение ясности.
Он внес ясность только с одним пакетом - tar. С другими все может быть совсем иначе :)
да, пусть лучше потыкает свой же код собранный из плюсовых сорцовъ. Волосы на заднице зашевелятся
Он использовал именно SRPM и DEB-SRC с теми же самыми параметрами сборки и накладываемыми патчами? Или tar.bz2 с официального сайта? Не могу понять.Лично я проблемы не вижу. Берёте все SRPM'ки от Fedora или openSUSE и собираете систему сами. Руководство не подскажу. А потом сравниваете файлы, 20 ли там быйт различий, или в официальных ISO всё-таки есть бэкдоры для спецслужб.
И кстати, он мог бы воспользоваться OBS и вот зачем. Когда компилируешь SRPM-ку с помощью rpmbuild, часто возникает ошибка. Например при сборке glib в Magela Linux у меня появилась "существующая, но не упакованная so-шка". Удалил пакет с ней и всё собралось. И такую ошибку я вижу часто! Когда в системе много-много программ, то компилятор может включить в список зависимостей то, что не было включено при подготовке официального репозитория! Из недавнего:
Проверка на неупакованный(е) файл(ы): /usr/lib/rpm/check-files /usr/src/packages/BUILDROOT/vala-0.16.0-2.1.2.x86_64
ошибка: Обнаружен(ы) установленный(е) (но не упакованный(е)) файл(ы):
/usr/share/devhelp/books/vala-0.16/attributes.html
/usr/share/devhelp/books/vala-0.16/classes.html
/usr/share/devhelp/books/vala-0.16/default.css
/usr/share/devhelp/books/vala-0.16/delegates.html
/usr/share/devhelp/books/vala-0.16/enums.html
/usr/share/devhelp/books/vala-0.16/exceptions.html
/usr/share/devhelp/books/vala-0.16/expressions.html
/usr/share/devhelp/books/vala-0.16/index.html
/usr/share/devhelp/books/vala-0.16/interfaces.html
/usr/share/devhelp/books/vala-0.16/methods.html
/usr/share/devhelp/books/vala-0.16/namespaces.html
/usr/share/devhelp/books/vala-0.16/overview.html
/usr/share/devhelp/books/vala-0.16/statements.html
/usr/share/devhelp/books/vala-0.16/structs.html
/usr/share/devhelp/books/vala-0.16/types.html
/usr/share/devhelp/books/vala-0.16/vala-0.16.devhelp2OBS же компилирует строго с теми зависимостями, которые перечислены в файле SPEC.
> Он использовал именно SRPM и DEB-SRC с теми же самыми параметрами сборки
> и накладываемыми патчами? Или tar.bz2 с официального сайта? Не могу понять.Окей, вот ты собрал пакет bar-1.1 с библоитектой libfoo-3.2.4, прошло 2 недели и libfoo обновилась в репозитории до версии 3.2.5, сохранив ABI, хотя в заголовочных файлах, например, поменялся порядок определения функций и, соответственно, при сборке с ней, бинарник получится уже другой (зависимости для сборки же не строгие). А про статичную линковку приборки можно даже не объяснять, и так все понятно.
И теперь представь все эти процессы в масштабах дистрибутива, когда пакеты постоянно обновляются. И еще веселее, если стабильный пакет был собран до релиза дистрибутива с библиотекой из нестабильной ветки. Или когда сборочное окружение состоит из нестабильных пакетов, пакетов из пары версий стороннего проекта, как это было в случае RHEL (Rawhide, Fedora 12, Fedora 13), из-за чего, кстати, CentOS 6 так долго и не выпускался.
Хорошая идея. Пусть в бинарь зашивают данные об окружении для сборки данного приложения.
> Хорошая идея. Пусть в бинарь зашивают данные об окружении для сборки данного
> приложения.а также имя, фамилию, номер кредитки и размер МПХ.
В общем-то он не первый, кто поднял эту тему. Я в своем блоге рассмотрел практически идентичный вопрос на примере Arch Linux чуть более года назад: http://patrakov.blogspot.ru/2012/04/verifying-corresponding-...
когда же откроют фабрики по сжиганию блоггеровъ...а то развелось, понимаешь, капитанов-истеричек
Так можно ли доверять открытому коду?
Если не ему, то кому тогда?
>Так можно ли доверять открытому коду?Коду — да.
А вот компилирующему из этого кода блоб субъекту — не факт.
Доверять нельзя никому.
> При оценки пересборки пакетов Debian результаты полностью оправдали предположения - различие
> составило 20 байт, и в этих байтах содержалась дата сборки. Для
> openSUSE и Fedora не удалось достигнуть повторяемости или хотя бы объяснить
> причину значительных различий.Поэтому при разработке использую только Debian, вернее его LTS вариант Ubuntu, ибо повторяемость результата не вызывает никаких проблем.
> Поэтому при разработке использую только Debian, вернее его LTS вариант Ubuntu, ибо
> повторяемость результата не вызывает никаких проблем.Забавно наблюдать "экспертов", не знающих про prelink.
А еще они не знают, что реальный срок поддержки LTS такой же, как и у дебиана - три года.
> Забавно наблюдать "экспертов", не знающих про prelink.Какой смешной вендузятник - заказчику исходники нужны, которые он сможет пересобрать у себя
> А еще они не знают, что реальный срок поддержки LTS
5 лет
> Ubuntu 12.04.2 LTS is a long-term support release. It has continuous hardware support improvements as well as guaranteed security and support updates until April 2017.
http://www.ubuntu.com/download/desktop
> Какой смешной вендузятник - заказчику исходники нужны, которые он сможет пересобрать у себяГы, реально не знаешь, раз пытаешься отмазаться общими словами.
>> Ubuntu 12.04.2 LTS is a long-term support release. It has continuous hardware support improvements as well as guaranteed security and support updates until April 2017.
И условия поддержки Ubuntu тоже не знаешь. Полноценная поддержки идет только три года. Дальше "поддерживается только серверная версия", т.е. минимальный набор из пары десятков пакетов.
Пора выпускать GPLv4?
> Для openSUSE и Fedora не удалось достигнуть повторяемости или хотя бы объяснить причину значительных различийprelink ?
>prelink ?… который изменит elf-executables из свеже-установленных (что из пакетов, что собранных из сырцов) только по cron'у согласно скрипту из (обычно) /etc/cron.daily/
думаю раз эдак 100500 можно хэши подсчитать к этому моменту.
совсем не факт что везде делает по крону. Т.е. крон всё равно остаётся, но кроме этого может запускаться сразу во время установки пакета.
Ну и где так делают?
В сабжевых дистрах — нет. Тогда к чему этот якобы аргумент?
вот вы же тут херней страдаете, а скоро все поменяется, не будет никаких сборок, форков, либерти будет только снится! лишитесь свободы в интернет пространстве!
Воспроизводимость результата превратилось в мощное колдунство. Это попадос конечно. Теперь им придется сильно подумать, чтобы заставить дистриб делать сборки с однозначно воспроизводимым результатам. А то элементарная проверка по md5
закроет линуксу путь в гос. структуры однозначно.
он наркоман, процесс сборки суси полностью прозрачен, скорее всего он собирал с исползованием апдейтов, тогда как бинарь тара собирался еще до апдейтов, плюс в не в родных инстурментах дистра.
https://build.opensuse.org/package/live_build_log?arch=i586&... вот логскачал tar-1.26-14.1.1.x86_64.rpm (6f45f498102b28cfe757776456a04bec) и распаковал
md5sum /tmp/tarr/bin/tar
35651e25c9bb21376065c3206cee8508 /tmp/tarr/bin/tarтеперь
osc co openSUSE:12.3 tar
cd ./openSUSE\:12.3/tar/
osc build -j3/var/tmp/build-root/standard-x86_64/.build.packages/RPMS/x86_64/tar-1.26-0.x86_64.rpm (99dec18a85b8a515eca3c2c6d93834a2) распаковываем
md5sum /tmp/tar/bin/tar
35651e25c9bb21376065c3206cee8508 /tmp/tar/bin/tar
какой неожиданный результат, нужно знать инструменты дистрибутива и примерно что и как в нем делаеться, предже чем писать вот такие посты.
> он наркоман, процесс сборки суси полностью прозрачен, скорее всего он собирал
> с исползованием апдейтов, тогда как бинарь тара собирался еще до апдейтов,
> плюс в не в родных инстурментах дистра.
> какой неожиданный результат, нужно знать инструменты дистрибутива и примерно что и как
> в нем делаеться, предже чем писать вот такие посты.Он проверял, является ли просто собранный из исходников бинарь идентичным бинарю в дистрибутиве.
Нет никаких гарантий, что этот ваш osc не подкидывает трояна (и тогда ессно бинари будут идентичные).
давай развивать мысль дальше, где гарантия что gcc не подвидывет трояна, где гарантия что сам CPU е подкидывает трояна и т.д?
Все исходники открыты, логи доступны.
osc собирает chroot\xen\qemu
давай развивать мысль дальше, где гарантия что gcc не подкидывет трояна, где гарантия что сам CPU не подкидывает трояна и т.д?
Все исходники открыты, логи доступны.
osc собирает chroot\xen\qemu окружение и делает все там(с апдейтами или нет это уже настроивается), rpmbuild использует все системное, не думаю что он заморочился выставить все нужные переменные окружения, и проверить идентичность версий gcc и прочего, ибо с нетинстала ставится сразу с апдейтеми.
> давай развивать мысль дальше, где гарантия что gcc не подкидывет трояна,gcc линкует libgcc статичиски в бинарник - вот там может лежать что угодно :)
> gcc линкует libgcc статичиски в бинарник - вот там может лежать что
> угодно :)Хорошо, что clang не линкует libgcc! "Что угодно" не пройдёт!! </в мозгу у тебя>
> Он проверял, является ли просто собранный из исходников бинарь идентичным бинарю в дистрибутиве.Так как собирал он в другом окружении, идентичности не получилось. Фороникс, что поделать.
> Нет никаких гарантий, что этот ваш osc не подкидывает трояна (и тогда ессно бинари будут идентичные).
Нет никаких гарантий, что это ваш emerge не засовывает троян в каждый собранный бинарник.
> наркоман, процесс сборки суси полностью прозраченТы повторял?
> он наркоман, процесс сборки суси полностью прозрачен,как в ресторане - ты заказываешь меню, тебе говорят что это сделано из чистых продуктов, приносят готовое блюдо. Ты хоть раз заходил в кухню? Ты хоть раз сам проверил?
И чем ты отличаешься от хомячка, нажимающего кнопку пуск?
заходил, кухню OBS я знаю олично, есть логи сборки любого пакета, и то что я через пол года, 3 командами получил локально точно такой же бинарник который лежит на сервере уже пол года доказывает что никаких шаманст там нет.
> как в ресторане - ты заказываешь меню, тебе говорят что это сделано из чистых продуктов, приносят готовое блюдо. Ты хоть раз заходил в кухню? Ты хоть раз сам проверил?
> И чем ты отличаешься от хомячка, нажимающего кнопку пуск?Точно. Теперь буду стебать этим всех запускателей gcc, которые не могут лично прочитать бинарник и установить соответствие каждой инструкции определенной строчке сорцов.
Use Gentoo, Luke!
Честно говоря когда я в первый раз узнал об опенсоурс, свободке и так далее, я сразу задался этим вопросом. Интересно почему чувак из KDE только сейчас решился его поднять? В прочем не суть. Важно осознать, что все это движение не вчера появилось и вопрос практически не существенен, так как, если в его паранойяльной теории все же такое случиться, изменения будут либо несущественны/незаметны, либо завтра же напишут статью о таком нарушении, так как это будет заметно по различным умозрительным заключениям о поведении программы и прочему. Суть в том, что лицензия запрещает такое делать, потому это вовсе не изъян, а фича, ибо вас не заставляют доказывать что исходники и софт соответствует друг другу.
> Интересно почему чувак из KDE только сейчас решился его поднять?чувак завёл блог, а там нужно что-то писать. Думал-думал что же эдакое нахерачить, день сидел, ночь... и придумал.
не задвай больше глупых вопросов.
>Честно говоря когда я в первый раз узнал об опенсоурс, свободке и так далееВчера?
Всё неколько глубже.
А не подсунули ли враги сборщику специальный gcc(он даже не в курсе) и теперь от него пакеты с бэкдорами?
Лицензию - доработать.
Дистрибьюторам рекомендовать указывать параметры повторяемости.
А идущим - собирать хотя бы gentoo.
Иначе всех ждет банка для хомячков.
Лицензия - это тебе не RFC, в ней рекомендации нафиг не сдались, потому, если что-то условиями лицензии не требуется, а "рекомендуется", то, считай, что этого в ней нет. В суд ты с нарушениями рекомендаций не пойдешь.
20 байт разницы при сборке tar, о ужас!
Я знаю, как занять парнишку.
Пусть KDE собирает и ищет отличия с разными опциями компиляции.
Сутки на компиляцию пакета... через неделю сам забьет.А тем, кто не доверяет репозиториям дистрибутива с цифровыми подписями, могу посоветовать пересобирать пакеты в своем окружении и класть в локальный репозиторий.
Безо всякого сарказма
А вот как заставить компилятор генерировать априори абсолютно разные результаты на одинаковые исходники? Рандомные адреса, рандомный оптимизатор, etc.
По соображениям безопасности, это получился бы настоящий торт!
> А вот как заставить компилятор генерировать априори абсолютно разные результаты на одинаковые
> исходники? Рандомные адреса, рандомный оптимизатор, etc.
> По соображениям безопасности, это получился бы настоящий торт!а для отладки — настоящий бред.
Все еще хуже на самом деле. Что делать с брадобреем (gcc) который компилирует тех, и только тех кто не компилируется сам?
> Все еще хуже на самом деле. Что делать с брадобреем (gcc) который
> компилирует тех, и только тех кто не компилируется сам?Почему? Тех, кто компилируется сам, он тоже компилирует (себя, например).
А вот вопрос о том, можно ли ему доверять - вполне резонный. Вдруг он изначально завирусован, и поражает каждый собираемый файл? Тогда результат может быть вполне повторяемым.
>> Все еще хуже на самом деле. Что делать с брадобреем (gcc) который
>> компилирует тех, и только тех кто не компилируется сам?
> Почему? Тех, кто компилируется сам, он тоже компилирует (себя, например).Ну это была изящная словесность :)
http://ru.wikipedia.org/wiki/%D0%9F%D0%B...
Я это к тому что все равно нужен минимум один бинарик которому приходится верить на слово.
> каждый собираемый файл?Алгоритм заражения может быть хитрее.
>>> Все еще хуже на самом деле. Что делать с брадобреем (gcc) который
>>> компилирует тех, и только тех кто не компилируется сам?
> Ну это была изящная словесность :)Оценил :-)
> Я это к тому что все равно нужен минимум один бинарик которому
> приходится верить на слово.А если вспомнить еще и о железе? Чего там прошито в микрухах - это черный ящик от которого вы имеете часть описания, но как соотносится эта часть с полным описанием - проверить не можете. Как узнать - не поражает ли Ваш процессор или ваш контроллер винчестера Ваш любимый и доверенный бинарник gcc? :-D
> Вдруг он изначально завирусованесли друг оказался вдруг..
Эти идиоты не догадались вырезать только .text секцию?
просто бяда, когда знают только об .text
весьма печалит. но ведь не доказывать же каждому менеджеру из макдональдса, что там и другие мелочи есть... и не только в текстовом формате.
Кстати отличная новость для всех кто с нетерпением ждал полностью рабочую и юзабельную версию ReactOS.Разрабы обещали мне в чате, что скоро выйдет альфа, в 2017 году...
Но в любом случае, губёшки раскатывать не стоит, так альфа будет ну очень "свежей"...
Парню из KDE это было забавы ради, а для госструктур это одно из основных требований. И уже давным-давно (года эдак с 2003) эта проблема решена - в требуемом объеме. Специализированные дистрибутивы (МСВС, АстраЛинукс) и то ПО для них, которое проходит сертификацию, проходят проверку на воспроизводимость. Т.е. берется у предпрятия диск с исходниками, берется документация по нему (инструкция по сборке), чистый комп, выполняется сборка, считается md5. И этот md5 сравнивается с md5, посчитанным с диска с бинарниками, предоставленным предприятием. Не совпадает - свободны.
>Т.е. берется у предпрятия диск с исходниками, берется документация
> по нему (инструкция по сборке), чистый комп, выполняется сборка,Загрузившись прямо в live-cd с _исходниками_.
> считается md5. И этот md5 сравнивается с md5, посчитанным с диска с бинарниками,
Понятно, что ты никогда этого не делал.
> предоставленным предприятием. Не совпадает - свободны.
Я то как раз делал много раз, сударь. И если вам есть, что сказать, потрудитесь по пролетарски не тыкать незнакомым вам людям.
Не в Live-cd, а в той среде, которая указана в качестве целевой. Как правило, это "чистая" установка эталонной, сертифицированной среды с указанными параметрами.
> Я то как раз делал много раз, сударь. И если вам есть,А я не делал.
> Как правило, это "чистая" установка эталонной, сертифицированной среды с указанными параметрами.
Со встроенной машиной времени или алкающие сертификации патчат _все_ сиссемы сборки всех исходников, чтобы те, не оставляли следов времени на локальных часах сборочницы в результирующих бинарях?
Или запросто кладут готовые .rpm в .srpm?
> Со встроенной машиной времени или алкающие сертификации патчат _все_ сиссемы сборки всех
> исходников, чтобы те, не оставляли следов времени на локальных часах сборочницы
> в результирующих бинарях?Да, со встроенной машиной времени -) По крайней мере, в МСВС используется специальный модуль ядра для обеспечения пересобираемости, который в том числе заставляет системные часы "тикать" определенным образом - так, что на момент вызова каждой утилиты из сборочных скриптов часы имеют такое же время, как и на предыдущей пересборке. Патчить сборку пакетов приходиться, но редко, и не сильно.
> Или запросто кладут готовые .rpm в .srpm?
Разработчик, имеющий совесть, это не сделает никогда. А сертификационная лаборатория следит за тем, что бы все разработчики совесть имели. Как правило, реально следит.
> По крайней мере, в МСВС используется специальный модуль ядра для обеспечения пересобираемости, который в том числе заставляет системные часы "тикать" определенным образом - так, что на момент вызова каждой утилиты из сборочных скриптов часы имеют такое же время, как и на предыдущей пересборке.не перестаю удивляться тупости отечественных разработчиков 'защищённых' систем.
> не перестаю удивляться тупости отечественных разработчиков 'защищённых' систем.Не, ну не прав же. Профессионалы! Умищу-то, умищу -- куда.
Жить захочешь, ещё не так раскорячишься.
s/.+,/Захочешь наклеечками торговать,/
Парни из KDE готовят прогрессивную общественность к QML?