[devel] Ограничения сборочницы для virtualbox-6.1.14 и выше

Evgeny Sinelnikov sin на altlinux.org
Пн Дек 28 21:09:47 MSK 2020


пн, 28 дек. 2020 г. в 21:20, Aleksey Novodvorsky <aen at basealt.ru>:
>
>
>
> пн, 28 дек. 2020 г., 20:13 Dmitry V. Levin <ldv at altlinux.org>:
>>
>> On Mon, Dec 28, 2020 at 06:38:49PM +0300, Andrey Savchenko wrote:
>> > On Mon, 28 Dec 2020 17:57:24 +0300 Dmitry V. Levin wrote:
>> > > On Mon, Dec 28, 2020 at 04:56:06PM +0300, Aleksey Novodvorsky wrote:
>> > > [...]
>> > > > Да, это блокер перехода на 5.10 LTS. И в Сизифе в качестве std-def тоже,
>> > > > конечно.
>> > >
>> > > Этот подход глубоко порочный.
>> > > Если какая-то проприетарщина блокирует обновление ядра, то проще собрать
>> > > себе ядро, которое никогда не заблокирует какая-то там проприетарщина.
>> >
>> > GPLv2 — это проприетарщина? Вот RMS удивится.
>>
>> Когда virtualbox стал GPLv2, интересно?
>
>
> Когда -- не скажу, но сейчас:
>
> https://www.virtualbox.org/manual/ch01.html#intro-installing

Он таким был всегда. При этом базовый функционал вполне достаточен для
многих задач, а проприетарная часть расширений не обязательна и
постепенно перетекает в базовую.

Мы собираем базовый функционал и он вполне свободный. И это,
действительно, самый популярный инструмент для виртуализации для очень
многих пользователей. Например, в правительстве, куда я приходил
посмотреть что у них и как, его тоже используют на всю катушку без
всякий проприетарных расширений а кое-где и с ними.

Теперь о проблеме. Мы с Валерой много вариантов попробовали в плане
решения. Сделать заглушку в виде ответной библиотеки я отвергал, как
дикую. Но что-то мне уже подсказывает, что она не так уж и далека от
реальности, которая дана в виде сборочницы. Это можно даже
автоматизировать.

Я бы предложил исключить из проверки файлы с расширением *.r0, даже
если это ELF. Или дать возможность исключать из проверки файлы в
спекфайле. Ещё один вариант - это как-то откатить код апстрима до
предыдущего, но там, ой как, всё непросто.

Если не найдётся решения сделать исключение на сборочнице, то я пока
вижу только одно "хорошее" программное решение - разобрать код
загрузки этих модулей и пропатчить virtualbox обратно. Но это куча
работы. И мне тогда придётся ей занятся во внерабочее время.

В чём суть обратного исправления? И откуда взялся этот ELF? дело в
том, что разработчики ведут этот проект на одной кодовой базе под
разные операционные системы. И возникшая перед нами проблема - это
результат обобщения их кодовой базы. Вот и вся суть. Мне надо теперь
очень глубоко вчитаться в код virtualbox'а, чтобы всё это вернуть
обратно. Я очень надеялся, что меня минует это чаша.



-- 
Sin (Sinelnikov Evgeny)


Подробная информация о списке рассылки Devel