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

Последним шагом стало удаление dialog, а также dpv, libdpv и libfigpar. Согласно обзору FreeBSD, dialog был последним компонентом базовой системы, распространявшимся под GPL.

Установщик FreeBSD перешёл с dialog на bsddialog под лицензией BSD около четырёх лет назад. Утилита dpv, которая последней использовала dialog в дереве исходного кода, не включалась в сборку уже более двух лет. Вслед за удалением dialog проект FreeBSD также упразднил в дереве исходного кода выделенный каталог gnu/.

В коммите каталог описан как “пустая оболочка” после удаления GNU diff и dialog. FreeBSD также удалила оставшиеся сборочные файлы GNU, тесты, файлы лицензий и связанную инфраструктуру.

Разумеется, это не значит, что пользователи FreeBSD больше не смогут запускать программы под GPL. Тысячи GPL-приложений по-прежнему доступны через порты и репозитории бинарных пакетов FreeBSD.

Это достижение относится именно к базовой системе FreeBSD, которая включает ядро, системные библиотеки, утилиты командной строки, компоненты установщика и средства администрирования, поставляемые в составе ОС.

Ещё одним важным шагом стал отказ от GNU diff. FreeBSD долго сохраняла GNU diff из-за того, что её собственная BSD-реализация не имела полноценной утилиты diff3. Как только BSD-версия diff3 была готова, разработчики удалили GNU-вариант и связанную сборочную опцию.

Если задаться вопросом, зачем проект FreeBSD идёт на такие шаги, ответ кроется, в частности, в переходе многих проектов GNU с GPLv2 на GPLv3.

FreeBSD старается избегать включения в базовую систему программ под GPLv3, поскольку дополнительные требования этой лицензии плохо согласуются с предпочтением проекта в пользу разрешительного BSD-лицензирования. В результате FreeBSD нередко приходилось либо продолжать поставлять всё более старые выпуски под GPLv2, либо создавать подходящие замены.

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

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

Это различие важно, потому что базовая система поддерживается проектом FreeBSD как единая операционная система, а порты и пакеты выступают дополнительным сторонним ПО, устанавливаемым отдельно.

Наконец, для конечных пользователей это изменение скорее всего пройдёт незамеченным. Удалённые компоненты были заменены или не входили в стандартные сборки уже несколько лет. Однако с точки зрения лицензирования и сопровождения проекта это знаменует окончание одного из самых продолжительных технических переходов в истории FreeBSD.