Очистка базовой системы FreeBSD-CURRENT от GPL-компонентов
В актуальную кодовую базу FreeBSD-CURRENT, которая станет основой будущей версии FreeBSD 16, внесли важные изменения. Из базовой системы полностью удалены последние компоненты, распространяемые под лицензией GPL — утилиты diff3 и dialog.
В рамках процесса импортозамещения программного обеспечения команда разработчиков предприняла следующие шаги:
- Программа
diff3заменена на аналогичное решение от проекта OpenBSD, распространяемое под свободной лицензией BSD. - Вместо
dialogвнедрена специально разработанная для нужд FreeBSD утилитаbsddialog.
Инсталлятор операционной системы перешел на использование bsddialog еще четыре года назад. Последним элементом, зависящим от GNU dialog, оставалась утилита dpv. Поскольку она была признана устаревшей еще два года назад, разработчики приняли решение удалить её из состава системы вместе с зависимостями GNU.
Ожидается, что релиз FreeBSD 16, запланированный на декабрь 2027 года, станет первой версией, полностью свободной от кода под лицензией GPL в базовой комплектации.
История перехода на лицензию BSD
Главной причиной отказа от проектов GNU стал переход большинства из них на лицензию GPLv3, условия которой разработчики FreeBSD сочли неприемлемыми для включения в базовую систему. В течение многих лет это вынуждало проект использовать устаревшие версии утилит, выпущенные еще до принятия GPLv3.
Процесс поэтапной замены компонентов был масштабным:
- 2012 год: Утилита GNU
patchзаменена на BSD-версию, основанную на наработках проекта DragonFly BSD. - Компиляторы и отладка: Отладчик GDB был заменен на
lldb, а GCC уступил место компилятору Clang. - Инструментарий: Утилиты binutils заменены аналогами от проекта LLVM, а GNU
grep— наbsdgrep. - Системные компоненты: Заменена утилита
dtc(Device Tree Compiler), удалены инструментctmи процесс автоматического монтированияamd, который был заменен наautofs.






