Когда компания просит вас передать авторские права
Компании, разрабатывающие свободные программы и выпускающие их под лицензией GNU GPL, иногда также распространяют копии программ на других условиях. Если они поставляют в точности те же программы под другой лицензией определенным пользователям, которые платят за это (как правило, разрешая применять исходные тексты в несвободных программах), то мы называем это “продажей исключений”. Если они поставляют некоторую версию программы исключительно несвободным образом, мы называем это выпуском чисто несвободной версии программы.
Статья Продажа исключений из GNU GPL разъясняет, почему продажа исключений допустима, хотя только как крайний случай. Напротив, выпуск чисто несвободной версии — это такое же прямое зло, как и выпуск любой другой несвободной программы.
Компании обычно делают это, пользуясь программами, которые они разработали. Поскольку они обладают авторскими правами на эти программы, они по закону могут распространять их, как угодно, даже на разных условиях параллельно. Но что происходит, когда вы публикуете измененную версию этой свободной программы, а компания хочет включить ваши изменения в свою версию?
Поскольку вы получили программу на условиях GPL, то когда вы распространяете измененную версию, вы должны лицензировать ее на условиях GPL. Если компания получит копию, она сможет пользоваться ею на условиях GPL; ей не будет позволено включать ваши изменения в эту программу и продавать исключения для нее. Ей также будет нельзя выпускать чисто несвободные версии, включающие ваши исходные тексты. Если это то, что вам нужно, то это получается само собой. Однако если компания намерена продавать исключения, она, вероятно, решит отказаться от использования ваших изменений.
Предположим, однако, что вы не против продажи исключений, и вы желаете позволить компании делать это, внося ваши изменения в программу. На это можно пойти, но вам нужно следить за тем, что вы подписываете; в противном случае результаты могут вас удивить.
Компания, вероятно, предложит вам передать или лицензировать ей свои авторские права, подписав соглашение о передаче авторского права или лицензионное соглашение соразработчика. Само по себе это не обязательно плохо; например, многие разработчики программ GNU передали авторские права ФСПО. Однако ФСПО никогда не продает исключений, и контракты на передачу авторских прав включают заявление о намерении распространять программы разработчика только с исходным текстом и только с разрешением перераспространения.
Контракт, который предложит компания, может не включать такого заявления. Вместо этого он может позволять компании пользоваться вашими изменениями, как ей угодно. Если вы подпишете это, компания сможет поступать с вашими исходными текстами по-разному. Она сможет продолжать продавать исключения для программы, включающей ваши тексты. Она сможет выпускать чисто несвободные измененные или расширенные версии, включающие ваши тексты. Она сможет даже включить ваши тексты только в несвободные версии. Может получиться, что ваш вклад в программу фактически станет пожертвованием в пользу несвободной программы.
Какие из этих действий разрешать — дело ваше, но вот рекомендации ФСПО. Если вы планируете сделать серьезный вклад в проект, настаивайте, чтобы соглашение о доработках требовало, чтобы версии программы с вашей работой были доступны обществу по лицензии свободных программ. Это позволит разработчику продавать исключения, но предотвратит использование им вашей работы в программах, которые доступны только по несвободной лицензии.
Если ваш вклад меньше, вы могли бы согласиться на более слабое условие: что компания будет включать ваши изменения в выпуски свободных программ так же, как, возможно, в несвободные программы. Это позволило бы компании пользоваться вашей работой в измененных программах, которые доступны только по несвободной лицензии. Выпуск несвободной программы — это всегда плохо, но если ваши изменения невелики, может оказаться более важным улучшить свободную версию, чем оказывать сопротивление несвободным версиям.
Вы можете контролировать эти последствия, настаивая на соответствующих условиях в контракте. Чтобы позволить продавать исключения в программе, которая содержит ваш исходный текст, но отказать компании в возможности выпускать чисто несвободные версии, содержащие ваш текст, вы можете настаивать на условии, более или менее сходном с этим:
Любая программа, основанная (как это определяется в версии 3 Стандартной общественной лицензии GNU) на исходных текстах Программиста, которую будет распространять Фирма, будет публиковаться Фирмой под (а) “Стандартной общественной лицензией GNU (GPL) версии 2 или более поздней”, или (б) так же, как в (а), но с заменой “2” на любой больший номер существующей версии лицензии GPL. В случае, если Фирма будет делать таким образом программу в виде исходных текстов доступной обществу бесплатно, она может также распространять идентичную программу некоторым из пользователей на условиях, позволяющих им компоновать тексты программы с несвободными текстами и выпускать такую комбинацию в двоичном виде по какой им угодно лицензии.
Или, если то, против чего вы возражаете — это выпуск некоторого варианта ваших текстов исключительно в несвободной версии, вы можете настаивать на условии, более или менее сходном с этим:
Любая программа, основанная (как это определяется в версии 3 Стандартной общественной лицензии GNU) на исходных текстах Программиста, которую будет распространять Фирма, будет публиковаться Фирмой под (а) “Стандартной общественной лицензией GNU (GPL) версии 2 или более поздней”, или (б) так же, как в (а), но с заменой “2” на любой больший номер существующей версии лицензии GPL. В случае, если Фирма будет делать таким образом программу в виде исходных текстов доступной обществу бесплатно, она может также распространять эту же версию исходных текстов Программиста в других программах по каким ей угодно лицензиям.
Если программа выпускается под GNU Affero GPL, добавьте “Афферо” после “лицензии”, измените “GPL” на “AGPL”, номер версии “2” на “3”, и, кроме того, имеет смысл заменить “которую будет распространять Фирма” на “которую Фирма будет распространять или эксплуатировать на сервере, доступном пользователям, отличным от Фирмы”.
ФСПО консультировался с юристом об этих текстах, но вам следует получить собственную юридическую консультацию перед тем, как вы воспользуетесь ими.
Когда компания скажет, на какие из этих условий она пойдет, это покажет вам, насколько далеко она планирует отойти от принципов свободного программного обеспечения. Тогда вы можете ответить так, чтобы гарантировать, что ваша работа принесет пользу сообществу свободного программного обеспечения, а не обратится в несвободные программы.