Red Hat, Facebook, Google и IBM обязались предоставить «значительный период исправления» для устранения проблем с соблюдением лицензии GPLv2 на открытое ПО.
GNU Public License version 2 (GPLv2) является, пожалуй, самой важной лицензией на открытый исходный код по одной причине: эту лицензию использует Linux. 27 ноября три использующих Linux технических гиганта, Facebook, Google и IBM, а также Red Hat, крупнейший дистрибутор Linux, объявили, что расширят дополнительные права, чтобы помочь компаниям, допустившим ошибки при выполнении условий лицензии GPLv2 на открытый код.
GPLv2 и ее близкая родственница GNU Lesser General Public License (LGPL) широко применяются в качестве лицензий на открытое ПО. С выпуском GPL version 3 (GPLv3) был принят подход «экспресс-аннулирования» (express termination), который предоставлял пользователям возможности для исправления ошибок в соблюдении условий лицензии. Такой подход позволяет принудить к соблюдению условий лицензии в соответствии с принятыми в сообществе нормами.
Четыре корпорации обязались распространить подход GPLv3 к ошибкам в соблюдении лицензии на программный код, лицензируемый в соответствии с GPLv2, LGPLv2.1 и v2. В частности, «Общая приверженность праву на исправление» (Common Cure Rights Commitment) предусматривает:
- до начала или продолжения судебного разбирательства или рассмотрения иска (за исключением защитных мер) в связи с прекращением действия соответствующей лицензии (Covered License) [компания] обязуется распространить на лицо или организацию («вы»), обвиненные в нарушении соответствующей лицензии, следующие положения, касающиеся исправления и восстановления, заимствованные из GPL version 3. Термин «данная лицензия», как он применяется здесь, относится к конкретной соответствующей лицензии, о соблюдении которой идет речь;
- однако если вы прекратили все нарушения данной лицензии, то ваша лицензия от конкретного правообладателя восстанавливается a) временно, пока и прежде чем правообладатель явно и окончательно не прекратит действие вашей лицензии, и б) постоянно, если правообладатель не сможет уведомить вас о ее нарушении любыми разумными способами до истечения 60 дней после приостановки действия лицензии;
- более того, ваша лицензия от конкретного правообладателя восстанавливается навсегда, если правообладатель уведомляет вас о ее нарушении любыми разумными способами, если вы первый раз получили уведомление о нарушении данной лицензии (для любой работы) от этого правообладателя и если вы устраните нарушение в течение 30 дней после получения такого уведомления;
- [компания] рассматривает эту приверженность как безотзывную, обязательную и подлежащую исполнению [компанией] и правопреемниками или наследниками [компании] как правообладателя;
- [компания] может модифицировать данную приверженность путем публикации новой редакции на этой странице или заменяющей ее.
Ожидается, что вскоре и другие компании присоединятся к поддержке этого нового подхода GPLv2.
Это юридически обязывает каждую компанию применять содержащиеся в GPLv3 положения об исправлении к их защищенному авторским правом коду, лицензированному на условиях GPLv2, LGPLv2.1 и LGPLv2 (кроме случаев защитных мер в ответ на судебное преследование).
Это означает следование по стопам проекта разработки ядра Linux, который недавно принял такой подход в заявлении Linux Kernel Enforcement Statement, и таких организаций, как Free Software Foundation и Software Freedom Conservancy, которые закрепили данную концепцию в документе Principles of Community-Oriented GPL Enforcement.
Не думайте, что перечисленные выше четыре корпорации занимают более агрессивную позицию в вопросах судебного преследования компаний, нарушающих условия GPL. Наоборот.
Президент Open Source Initiative (OSI) Саймон Фиппс прокомментировал так: «Я приветствую данное обязательство крупнейших компаний в области Open Source поставить доверие сообщества и распространение открытого кода на первое место и сохранить судебные тяжбы по поводу лицензий в качестве крайней меры. Пусть многие другие последуют их примеру!».
Так почему эти корпорации просто не изменят лицензию на свой вклад в ядро Linux на GPLv3? Это решительно невозможно. Общей лицензией на ядро Linux является только GPLv2.
В 2016 г. Линус Торвальдс сказал: «Я люблю GPLv2. Я думаю, эта лицензия была одним из определяющих факторов успеха Linux, потому что она заставляла вас возвращать, что означало, что фрагментация никогда не была целесообразной с технической точки зрения».
Почему они это делают? Исполнительный вице-президент и главный юрисконсульт Red Hat Майкл Каннингхем заявил: «Мы верим в обеспечение большей справедливости и предсказуемости при лицензировании и рост участия в сообществе открытого кода. Мы призываем других правообладателей GPLv2 последовать нашему примеру».
Помощник главного юрисконсульта IBM Марк Рингс добавил: «На протяжении многих лет GPLv2 и v3 направляли развитие крупнейшей в мире совместно используемой базы кода — Linux. Распространение положения GPLv3 об исправлении нарушений на GPLv2 обеспечит продолжение расширения использования и устойчивый рост Linux в ближайшие десятилетия. IBM долгое время является ведущей сторонницей Linux и открытого кода и содействует разработке ядра Linux. Углубление нашей приверженности посредством данного заявления представляет естественную эволюцию такой поддержки».
Хотя об этом никто не говорит, представляется, что эти шаги являются реакцией на некоторые недавние спорные судебные процессы по поводу GPLv2.
Вот один из примеров. Компания Grsecurity, специализирующаяся на безопасности Linux, блокировала распространение пользователями своего кода Linux, предоставляемого на условиях GPLv2. Брюс Перенс, один из патриархов открытого кода, написал в блоге, что компаниям «следует избегать продукта Grsecurity, поскольку он представляет собой пособничество в нарушении авторского права и риск нарушения контракта». Он заявил это на том основании, что GPLv2 гарантирует право на распространение кода. Grsecurity ответила тем, что подала на Перенса в суд. Однако компания не предъявила иск Торвальдсу, который объявил, что «ее исправления представляют собой просто мусор».
В другом случае, вызвавшем реакцию разработчиков ядра Linux, как заявил сопровождающий (мантейнер) стабильную ветку ядра Linux Грег Кроа-Хартмен, новую позицию по вопросу о соблюдении GPLv2 обусловили действия одного из бывших разработчиков ядра Linux.
Он пояснил: «К сожалению, те же процессы, которые мы используем для гарантирования соблюдения лицензионных обязательств и доступности исходного кода, могут также противоправно использоваться для троллинга с целью получения личного денежного вознаграждения. В частности, проблемы возникли, когда разработчик из сообщества Netfilter Патрик Макхарди попытался тайно заставить признать его авторские права и требовал крупные суммы денег, угрожая или привлекая к суду».
Макхарди возглавлял команду разработчиков ядра Netfilter. Это утилита ядра Linux, выполняющая различные сетевые функции, такие как трансляция сетевых адресов. Макхарди был исключен из команды Netfilter. Считается, что он подал в суд более чем на 50 компаний, требуя от них денег. Разработчики Netfilter подготовили документ, разъясняющий, как следует реагировать на его попытки получить деньги с производителей. По словам Кроа-Хартмена, действия Макхарди принесли ему несколько миллионов евро.
Хотя изменение корпорациями, разработчиками и сообществом открытого кода порядка соблюдения GPLv2 и LGPL не сможет остановить Макхарди, оно позволит в будущем блокировать попытки мошенников из числа разработчиков предъявлять пользователям Linux неправомерные требования.