URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 132045
[ Назад ]

Исходное сообщение
"Выпуск GNU Mes 0.25, инструментария для самодостаточной сборки дистрибутивов"

Отправлено opennews , 12-Ноя-23 10:49 
После полутора лет разработки состоялся выпуск инструментария GNU Mes 0.25, обеспечивающего процесс бутстрэппинга (bootstrap) для GCC и позволяющего добиться замкнутого цикла пересборки из исходных текстов...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=60097


Содержание

Сообщения в этом обсуждении
"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 11:05 
Больше всего меня поражает такое длительное время между стабильными релизами у опенсурц проектов. Этим они стреляют себе в ногу. Обыватель не будет качать найтли или, не дай бог, собирать их из сурцов. Он скачает офф стабильный релиз. Которому два года и не такой уж он и стабильный - в нем куча багов. Что сделает обыватель, когда эта поделка не заведется изкоробки? Он свалит к проприетарщикам, у которых релизы вылизаны до идеала. Яркий пример - Code::Blocks, у который в последнем релизе поломан копипстинг, что очень сильно раздражает.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 11:22 
Некогда нам, вам нужно вы и собирайте. А мы никому ничего не должны, пусть нас проект будет в жопе все равно мы бесплатно пашем.
И вообще, какое вам дело до качества, наш код открыт, вот и молитесь на нас теперь!

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 11:53 
Всё правильно сказано. Опенсорс проекты - это не халява и не бесплатный труд, а решение исключительно своих проблем. Хотите чтобы кто-то решал чужие? Заплатите ему за это. Или face your problems yourself. Опенсорс - не коммунизм.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 14:50 
Получается лучше спиратить проприетарь, чем надеяться, что в попенсорсных аналогах что-то будет работать. Теперь я понимаю почему у нас попенсорс не развит.......

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 15:00 
Спиратить проприетарь с интегрированной малварью. Сейчас не нулевые, теперь почти всегда так. Если вас такое устраивает - то да.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 16:44 
На приватных трекерах нет никакой малвари.


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 21:03 
Дважды наивный. 1. малварь от разработчика идёт, напр. "телеметрия" и прочие закладки для отслеживания нелицензионных установок. 2. С какой стати на приватных нет? Даже если приклеенная малварь не распространяется в сговоре с модератором (а зачастаю она распространяется именно в сговоре с модератором, который оперативно трёт все сообщения с жалобами на малварь, в том числе пруфами уровня детальной пошаговой инструкции по отклеиванию), прибыль от малвари позволит новый аккаунт купить и окупить в маловероятном случае бана.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 22:16 
Потому что трекеров больше, чем один, везде не потрешь отзывы. И репутация зарабатывается годами, а теряется моментально.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 15:31 
Секрета не открою, когда скажу, что на репутацию вообще всем похрен в случае монополии. Владельцы и работники не нужных трекеров просто сядут. А владельцы нужных будут делать то, что им надо, и не сядут, ибо трекер кому надо принадлежит, а вы никуда не денетесь с подводной лодки и продолжите хавать двойную малварь, и от производителя ПО, и от релизеров.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 15:48 
Примеры давай двойной малвари на подконтрольных, а не теории заговора. Я почему то не склонен доверять шизе местных, которые ME из биоса выпиливают. Если вы поехавшие параноики - ваши проблемы. А почему должны ваши фантазии волновать, покуда мои кредитки целы, я доволен, я ведь не скрываюсь от мирового правительства рептилоидов, чтобы себя накручивать.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 01:49 
А вот это — коммунизм! Либо на халяву, либо сп…ть.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 16:00 
Профессионально приплетаю коммунизм. Дорого.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 17:06 
Сделай паузу с приплетаниями, поделись со всеми.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 11:41 
> Всё правильно сказано. Опенсорс проекты - это не халява и не бесплатный
> труд, а решение исключительно своих проблем. Хотите чтобы кто-то решал чужие?
> Заплатите ему за это. Или face your problems yourself. Опенсорс -
> не коммунизм.

А какжи так?! А какжи "скачивая линукс вы скачиваете коммунизм?!" xD


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 14:47 
В целом существует continuous delivery. Я так и публикую свои библиотеки на npm. Как только изменения попадают в мастер. Только использовал GitHub Actions, которое не рекомендую, они постоянно что-то меняют и оно ломается периодически. Лучше как-то обеспечить локальный сценарий сборки — надёжнее будет.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 11:55 
>> GNU Mes is a Scheme interpreter and C compiler for bootstrapping the GNU System.
>> The final goal is to help create a full source bootstrap as part of the bootstrappable builds effort for any UNIX-like operating system.
> Что сделает обыватель, когда эта поделка не заведется изкоробки? Он свалит к проприетарщикам, у которых релизы вылизаны до идеала.

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


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 11:59 
Все для Вас
https://visualstudio.microsoft.com/ru/

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:06 
Ну так ешьте корпоративное вас же ни кто не принуждает.
Правда если заглянуть внутрь то там тот же опенсорс только уже с закладками нужными

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:09 
>> GNU Mes is a Scheme interpreter and C compiler for bootstrapping the GNU System.
>> .. full source bootstrap as part of the bootstrappable builds effort for any UNIX-like operating system.
> Все для Вас
> https://visualstudio.microsoft.com/ru/

Все для Вас
https://learn-english-online.org/Lesson1/Lesson1.htm



"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 16:42 
Это тот вылизанный до идеала компилятор, который фиксит баги, а потом в следующем же крупном релизе их снова возвращает? Вот уж точно, отточеный до идеала.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 01:48 
Недавно как раз вспоминал, какие есть коммерчески успешные игры, собранные свободным компилятором. И вспомнил ровно одну — Quke 1. Но Кармак в своё время тем ещё экспериментатором был. Впрочем, эксперимент не задался.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено фф , 16-Ноя-23 07:20 
В playstation SDK от сони входит gcc - подозреваю, что большинство игр на плойке собрано им.
Сколько из них были комерчески успешными не скажу.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:01 
>>Обыватель не будет качать найтли или, не дай бог, собирать их из сурцов. Он скачает офф стабильный релиз....

а кто такой обыватель и зачем ему это нужно


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 16:54 
Обыватель каждый день на кухне бутстраппит NixOS. Каждая кухарка должна уметь не только управлять государством, но и обеспечить суверенитет государства операционными системами.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 16:47 
Не на то смотрите. Дело не в том, что между релизами два года, дело в том, что недостаточно тестируют. А то повадились: быстро-быстро пихнули в релиз то, что, по сути, является в лучшем случае бета-версией, а уж в продакшне дотестируют. В итоге всё равно после релиза ждёшь ещё 2-3 патча, чтобы "стабильная" версия стала действительно стабильноый.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 22:22 
Это если более менее успешный/популярный проект, а не подделка одного васяна. Такие могут и по 2 года делать промежутки между версиями, а минорных не делать вовсе.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 11:58 
Это божественно!

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 11:59 
Не хайпово, не взлетит. Надо написать компилятор go на rust, и компилятор rust на go. На компилятор Си - забить.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:41 
Теперь точно сделают свой дистрибутив с нескучными обоями.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:43 
Guix ?

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:49 
С консолью на последовательном порту.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:47 
Все конечно хорошо, но лучшебы эти силы пустили на батстрап Rust компилятора. Я RMS доверяю, мне rust нужен, подонки его везде напихали.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 12:48 
да как напихали так и выпилят делов то

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 13:58 
Уже давно есть. Правда цепочка довольно длинная получилась, надо бы оптимизировать.
https://guix.gnu.org/ru/blog/2018/bootstrapping-rust/

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 14:10 
Когда-то был TCCBOOT, который в процессе загрузки собирал урезанное ядро Linux.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 17:51 
> В GNU Mes предлагается самодостаточный (self-hosting) интерпретатор для языка Scheme, написанный на языке Си

Это рушит концепцию развет нет? Все равно для сборки нужен Си компилятор.


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 18:28 
Там цепочка начинается с ассемблера, а не с Си

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 15:10 
А должна начинаться с простейшего процессора на минимуме простейших кустарно изготавливаемых дискретных элементов, простейшего считывателя перфоленты, простейшего термопринтера, печатающего места для отверстий на перфоленте, простейшей программы для этого устройства в виде транскрипта перфоленты. Всё должно быть выжжено в кубе из кварца по технологии Project Silica и заточено на Шпицбергене.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 15:43 
Так оно так и начиналось ;)
Просто Вы немного опоздали :(

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 12-Ноя-23 20:24 
> Оба компонента взаимособираемы.

тут есть один нюанс: сборка происходит уже собранным компилятором, а выполнение -- уже собранным интерпретатором.
поэтому пока они оба находятся в исходниках, собирать/выполнять придётся чем-то уже собранным заранее.
а оно является потенциальным источником закладок -- по исходному условию.

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

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

но это всё-равно легче, чем прочитать весь код gcc или llvm/clang.


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 01:00 
Для x86 GNU Mes собирается вот из этого: https://github.com/oriansj/bootstrap-seeds/blob/master/POSIX...
Здесь бинарник по сути являтся зеркальным отражением своего исходного кода. Подкинуть туда закладки будет мягко говоря тяжеловато.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 03:22 
Забавно, что в README указанного проекта написано

> NEVER TRUST ANYTHING IN HERE


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 08:09 
Это правильно. Ты должен проверить исходники, перед тем как использовать. Иначе процесс бутстрапизации теряет смысл

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено anonymoose , 12-Ноя-23 22:32 
А вот дурацкий вопрос:

Есть у нас, например, MS Windows с дефолтным набором софта.
Можно на ней раскрутить Юникс-систему через этот bootstrap?

(mingw, cygwin по условиям задачи исключаются)


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено anonymous , 12-Ноя-23 23:08 
Кстати, не вопрос ни разу.
Ставим virtualbox/simh, под ним запускаем систему с компилятором C, профит!

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 08:38 
Когда добавят бутстрэппинг для С#?

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 14:24 
Когда Андреас Хелсберг на горе свистнет

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Пряник , 13-Ноя-23 10:51 
Ещё забыли пункт про сборку Knight процессора на ПЛИС для hex0 (который уже stage0).

Непонятно, как транспилер M2 Planet создаст исполняемый файл, если транспилер это source-to-source compiler?


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Тот_ещё_аноним , 13-Ноя-23 18:53 
Целевой source как машкод?
Заголовок как набор байт?

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Пряник , 13-Ноя-23 10:53 
Осталось Nix переписать, а то они используют обёртку вокруг него на Guile.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 11:38 
"В GNU Mes предлагается самодостаточный (self-hosting) интерпретатор для языка Scheme, написанный на языке Си, и простейший компилятор для языка Си (MesCC), написанный на языке Scheme. Оба компонента взаимособираемы. Scheme-интерпретатор даёт возможность собрать Си-компилятор MesCC, который затем позволяет собрать урезанную версию компилятора TinyCC (tcc), возможностей которого уже достаточно для сборки GCC."

А если уже собранные бинарники собраны так, чтобы в исходники добавлять скрытые закладки на этапе компиляции типа проверенных исходников, как они решили эту "проблему"?!


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено anonymous , 13-Ноя-23 12:39 
> А если уже собранные бинарники собраны так, чтобы в исходники добавлять скрытые закладки на этапе компиляции типа проверенных исходников, как они решили эту "проблему"?!

Сравнить результат бутстрапа на нескольких ОС c разными компиляторами C.

например, на VAX/VMS DEC C собираем интерпретатор scheme, им интерпретируем MesCC, которым собираем для x86 бинарник из проверочного исходника на C;

повторяем то же на linux gcc и т.д.

Если правильно понимаю, MesCC из одного и того же исходника C должен сгенерить идентичный бинарник независимо от того, как собирался scheme, которым интерпретируется MesCC.


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 13-Ноя-23 15:52 
По моему скромному мнению, более надёжным решением было бы написание минималистичного компилятора C на ассембрере целевой архитектуры. Минималистичного насколько это возможно. Да, потребуется отдельно для x86_64, отдедьно для RISC-V64. Затем, _ручная_ трансляция этого C-компилятора в машинные коды с помещением выходного кода в минималистичный ELF-файл. Далее, сборка этим компилятором интерпретатора Scheme.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено anonymous , 13-Ноя-23 18:12 
> ... более надёжным решением было бы написание минималистичного компилятора C на ассембрере целевой архитектуры. Минималистичного насколько это возможно.

Ему еще рантайм так или иначе потребуется.
И всю эту радость грузить прямо в RAM тумблерами с пульта. Щолк-щолк.


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Пряник , 13-Ноя-23 17:58 
Эта новость как раз про решение этой проблемы. Тем чем читал? Я даже выше пояснил: первый компилятор ассемблера stage0 ты собираешь на ПЛИС/FPGA/вентильной матрице.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено mos87 , 13-Ноя-23 14:39 
очень крутая, интересная, технологичная - и, скорее всего, бесполезная норкомания.

It's not for using - it's just for looking through (c).


"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 16-Ноя-23 17:37 
Оно наберёт вес только после появления в массах компов с открытыми прошивками (Canoeboot https://www.opennet.ru/opennews/art.shtml?num=60011 прошивки видяхи, сетевухи, диска, ...)
А до этого АНБ легче засунуть трояна в бинарный блоб прошивки (https://en.m.wikipedia.org/wiki/Stuxnet), чем в компилятор C при бутстрапе с stage1.

"Выпуск GNU Mes 0.25, инструментария для самодостаточной сбор..."
Отправлено Аноним , 16-Ноя-23 16:57 
> Проект также развивает Си-библиотеку Mes C, которой достаточно для сборки glibc 2.2.5, binutils 2.20.1 и gcc 2.95.3, необходимых для развёртывания дистрибутива Guix для платформ i686-linux, x86_64-linux, armhf-linux и aarch64-linux, используя только исходные тексты (Full Source Bootstrap).
> В следующих выпусках ожидается появление поддержки бутстрэппинга NixOS  только из исходных текстов.

Заказываю сборку stage1 от Gentoo и минимал CD: https://distfiles.gentoo.org/releases/amd64/autobuilds/curre.../