GPL настолько плотно интегрирована в WordPress, что это уже не просто лицензия – это часть культуры сообщества. Дискуссии GPL приводили к потере старых друзей и появлению новых. Сколько мостов было сожжено. Сколько копий сломлено.
Сложно представить себе мир, – за исключением сторонних библиотек, – где прямая разработка софта различными участниками велась бы под какой-либо другой лицензией, отличной от GPL. Однако все течет, все меняется. Проект Gutenberg, являющийся основным двигателем разработки WordPress, может скоро получить двойное лицензирование – GNU General Public License (GPL) v2 и Mozilla Public License (MPL) v2.0.
Цель такого лицензирования состоит в том, чтобы Gutenberg можно было использовать в проприетарных приложениях, особенно в мобильной сфере, где имеются проблемы с распространением GPL-кода.
Участник мобильной команды разработчиков Максим Биэ (Maxime Biais) предложил это изменение еще в июле 2020 года. «Gutenberg поддерживает две основных платформы – web и нативные мобильные приложения. Лицензия GPL v2.0 препятствует распространению библиотеки Gutenberg в проприетарных мобильных приложениях».
В данный момент приложения WordPress for Android и WordPress for iOS используют Gutenberg. Оба лицензированы как GPL. Однако в целом в мобильных приложениях такая лицензия используется редко. Это существенно ограничивает потенциальный охват Gutenberg.
«Библиотеки для реализации Rich-Text редакторов в мобильном пространстве отсутствуют», – указал Максим. – «Не существует какого-либо известного open source rich-text редактора для Android или iOS. Мы считаем, что Gutenberg мог бы стать ключевой библиотекой для многих мобильных приложений, но при использовании GPL v2 этого никогда не произойдет».
Предложение по двойному лицензированию было анонсировано в блоге Make Core в сентябре 2020 года. Оно набрало всего лишь три комментария. Руководитель проекта WordPress Мэтт Мулленвег поддержал это изменение, указав, что оно позволит Gutenberg превратиться в новый cross-CMS стандарт.
«Сегодня распространять Gutenberg среди веб-приложений очень просто, даже если они не лицензированы под GPL. Однако встраивание Gutenberg в нативное приложение на iOS, Android невозможно. Исключением являются только приложения, полностью лицензированные под GPL», – отметил он. – «Если разработчики смогут распространять Gutenberg под лицензией MPL, то это существенно расширит использование проекта за пределами WordPress, привлечет больше участников к ядру, а также поможет и дальше развивать новые блоки. Пользователи Gutenberg от этого только выиграют».
Проблема с переключением лицензий состоит в том, что от каждого участника Gutenberg, внесшего свой вклад в разработку проекта, требуется явное разрешение на это действие. В репозитории GitHub приведено свыше 700 разработчиков, которые вносили изменения с появления проекта в 2016 году. Каждый из этих разработчиков должен дать согласие на переключение лицензий, ведь они по-прежнему имеют свое авторское право на внесенный код.
Некоторые из этих пользователей могут больше не участвовать в развитии проекта. Какие-то могут вообще не ответить на отправленный запрос. Возможно, кто-то даже откажется – такое право есть. В любом случае команде Gutenberg придется либо удалить код, либо переписать его.
В предложении отмечены четыре шага, которые проект Gutenberg должен пройти, чтобы официально получить двойную лицензию:
- 19 марта. Все последующие вклады в проект будут идти сразу под GPL и MPL.
- 2 апреля. Получение согласия через GitHub от всех участников посредством pull-запросов.
- Три месяца спустя. Начало переписывания или удаления кода, который невозможно релицензировать.
- Будущее: Как только весь код будет удален или переписан, Gutenberg будет обновлен до двойной лицензии GPL/MPL.
Обсуждение лицензирования поддержали лишь несколько человек. При этом некоторые выразили серьезную озабоченность такой сменой курса.
«Wordpress исторически был крепко связан с GPL», – написал в комментариях Аарон Джорбин (Aaron Jorbin), разработчик ядра WordPress. – «Четыре свободы GPL были практически нашим Биллем о правах. А теперь мы видим, что эти свободы мы получим только иногда. Любой желающий может взять код и лишить нас этих четырех свобод. Вместо расширения пользовательских возможностей мы этим шагом только устраняем наши свободы. Мне кажется, что этот шаг сделан в пользу бизнеса, а не в пользу простых людей».
MPL не считается вирусной лицензией, как это было в случае с GPL. Приложения, созданные на базе GPL-кода, должны предлагать те же самые свободы или больше. Разработчики приложений могут распространять MPL-код в том случае, если он вынесен в отдельный файл (отделен от проприетарного кода). Это позволяет компаниям ограничивать доступность некоторых участков своей кодовой базы. Пользователи могут не иметь свободы использования, разветвления, модификации и распространения всего кода приложения.
Пока что все отзывы, которые поступали к официальному предложению по двойному лицензированию, были либо восхищенными, либо просто положительными. Такой подход позволит Gutenberg открыть новый рынок. Если разработчики мобильных приложений начнут использовать Gutenberg в своих проектах, это привлечет новые таланты и к самой системе WordPress.
«В нашем приложении катастрофически не хватает WYSIWYG-редактора», – рассказал Радек Петрушевски (Radek Pietruszewski), технический руководитель Nozbe Teams. – «У нас была прекрасная реализация под web, но мы решили отказаться от нее, поскольку у нас отсутствовала возможность портировать ее на iOS и Android. Практически нет адекватных rich-text редакторов для iOS или Android. Но даже если бы они существовали, легче бы от этого не стало. Пришлось бы поставлять сразу три отдельных, каким-то образом совместимых между собой редактора. Это потребовало бы огромных сил. И вы сами знаете, что сделать с нуля качественный rich-text редактор – очень трудоемкий процесс. Сами мы бы не справились. Gutenberg помог бы нам, если бы не проблемы с лицензированием».
Пока неясно, как получить согласие от 700+ участников проекта Gutenberg на двойное лицензирование. Будет ли команда переписывать участки кода? Посмотрим, к чему это приведет в будущем.
Источник: wptavern.com