Заметка о том, как принадлежность кода лагерю "правильных" лицензий важнее функциональности

Я хочу поделиться с вами одним наблюдением, которое я сделал при изучении отчета о развитии FreeBSD за 4-й квартал 2021-го и за 4-й квартал 2020-го, но сперва небольшая вводная часть.

При разработке свободных и открытых операционных систем нередко функциональность приносится в жертву лицензионной чистоте. К примеру, Проект Debian разрабатывает по-настоящему свободный дистрибутив GNU/Linux (что бы Фонд СПО не говорил). Нередко случается так, что программное обеспечение, исходный код которого распространяется под той или иной свободной лицензией, содержит несвободные компоненты. В таких случаях перед попаданием в Debian все несвободные компоненты выкидываются из этого ПО. Ядро Linux, которое аж с 1996-го «привязано» к бинарным блобам, здесь не исключение, но ценой его освобождения является сокращение количества поддерживаемого оборудования.

Во FreeBSD есть похожая тенденция, когда компоненты операционной системы проходят отбор на соответствие определенным условиям распространения, и функциональность в этом отборе, также как и в Debian, имеет не самый высокий приоритет. Для того чтобы стать частью FreeBSD, компоненты должны распространяться на условиях любой свободной лицензии, за исключением GPL. Предпочтение отдается BSD и другим пермиссивным (разрешительным) лицензиям. Но так было не всегда. Было время, когда компоненты, распространяющиеся на условиях GPL, мирно сосуществовали со всеми остальными в базовой системе FreeBSD, но с приходом GPLv3 в 2007-м все изменилось – разработчики FreeBSD стали одержимы поиском и созданием замен для различных частей операционной системы, распространявшихся на условиях GPL. Так, на протяжении следующих десяти лет они работали в этом направлении. (О том, откуда нелюбовь к GPL берет свое начало, я рассказал в отдельной статье, а также в ролике, который вы найдете в конце этой заметки.) В отчете за 4-й квартал 2020-го разработчики похвастались, что у них это, наконец, получилось. Но позднее, из отчета за 4-й квартал 2021-го, стало ясно, что, выкинув из базовой системы отладчик GNU GDB, разработчики теперь по нему скучают, т.к. заменивший его LLDB не достаточно функционален для полноценной отладки ядра операционной системы. Действительно, одно дело заменить GNU Grep на альтернативу, распространяющуюся на условиях BSD, а другое дело найти полнофункциональные аналоги для фундамента разработки самой операционной системы – GCC и GDB. Но разработчики не сдаются – теперь их значительные усилия направлены на доведения LLDB до паритета в функциональности с GDB.

Многолетняя борьба разработчиков FreeBSD подходит к успешному завершению (об этом я надеюсь узнать уже из отчета за 1-й квартал 2022-го). Я, в свою очередь, продолжаю изучать квартальные отчеты некоммерческих организаций, занимающихся разработкой свободного и открытого ПО, вдохновляться упорством, с которым люди идут к поставленным целям, и делиться своими наблюдениями.

GNU/Linux

1.1K постов15.6K подписчиков

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.