Выпуск библиотеки Qt под лицензией GPL

Вашему вниманию предлагается перевод статьи Ричарда Столлмэна (Richard Stallman), написанной по поводу выпуска библиотеки Qt под лицензией GPL.

[Алексей Выскубов]

Вашему вниманию предлагается перевод статьи Ричарда Столлмэна (Richard Stallman), написанной по поводу выпуска библиотеки Qt под лицензией GPL.

Оригинал статьи может быть найден здесь.

Выпуск Qt под лицензией GPL означает, что теперь законно взять существующую программу, распространяющуюся на условиях GPL, и адаптировать ее для работы с Qt. Это событие также позволяет разрешить одну из долго существующих проблем сообщества открытого программного обеспечения - проблему этического и юридического статуса KDE.

Разработка KDE началась с фундаментальной ошибки - c решения использовать библиотеку Qt, которая в то время не являлась свободным программным обеспечением. Несмотря на хорошие намерения и тот факт, что KDE сам по себе был свободным ПО (Примечание переводчика: KDE - графический интерфейс пользователя, посему "он".), KDE никогда не смог быть стать частью абсолютно свободной операционной системы, поскольку для работы требовал несвободной программы.

Но разработчиков KDE это не беспокоило, и они набрали помощников, которые разделяли их взгляды. С развитием KDE/Qt эта разработка представляла все возрастающую опасность для свободного программного обеспечения. Опасность состояла в том, что KDE/Qt мог бы стать настолько популярным, что большая часть сообщества пользователей рассматривала бы его как необходимость, несмотря на тот факт, что пришлось бы использовать несвободное ПО.
Широкое приятие одной очень важной несвободной программы могло бы привести к общей склонности использовать несвободное ПО, что означало бы, что меньшее количество людей хотело бы помочь заменить KDE/Qt на что-либо совершенно свободное. И такая задача потребовала бы длительного периода "раскачки", как это было при замене Unix на GNU и GNU/Linux. Опять оказаться в такой ситуации не было вдохновляющей перспективой.

Но это еще не произошло, и было ясно, что мы должны принять превентивные меры, чтобы все-таки не оказаться в этой неприятной ситуации. В 1997 году мы, для того чтобы предотвратить неприятные последствия, начали два параллельных проекта: GNU desktop (GNOME), целью которого являлось создание совершенно отличного от KDE альтернативного графического интерфейса, и Harmony, свободной замены Qt.
Причиной, по которой мы запустили два проекта, была избыточность: любой из проектов мог не удасться, и риск был достаточно велик, чтобы предпринять две попытки одновременно.

GNOME удался, и в 1999 году стало ясно, что это успех. Тогда Qt была перевыпущена под новой лицензией, QPL, которая делала ее свободным ПО. Это решало принципиальную проблему KDE/Qt, состоявшую в том, что его часть была несвободной. Но осталась вторая проблема - проблема взаимоисключающих лицензий.

QPL несовместима с GPL, что означает, что Qt и модули с лицензией GPL не могут быть законно объединены, за исключением того случая, когда разработчик модуля разрешает сделать исключение. Разработчики KDE, конечно, намеревались использовать свой GPL-код совместно с Qt, и можно было утверждать, что раз вам говорят скомпоновать (link) программу с Qt, то вы неявно получаете разрешение это сделать. Но формальное разрешение в исходных текстах самого KDE отсутствовало, и в таких случаях не очень приятно полагаться на неявное разрешение.

Кроме того, в некоторых местах KDE содержал GPL-код других разработчиков, владельцы которого не давали разрешения на изменение лицензии. (Только владелец прав (copyright holder) может дать разрешение делать с кодом то, что не позволяет GPL.) Это было нарушением GPL, и поэтому, а также из-за отсутствия явно указанных исключений из лицензии, юридический статус KDE оставался туманным.

Qt 2.2 предоставила базу для решения этой дополнительной проблемы, но для аккуратного исправления требовалось еще определенная "зачистка". Нарушающее лицензию использование GPL-программы навсегда запрещает распространять основанный на ней код. Такие проблемы возникли в KDE, и теперь они должны быть решены.

Для всех авторов кода, входящего в KDE (точнее, всех владельцев прав (copyright holders)), было бы хорошей идеей ясно заявить, что компоновка (linking) их кода с Qt в прошлом делалась с их разрешения, чтобы пользователи KDE могли быть уверены, что они не нарушают права на распространение этого KDE-кода.

Кроме того, в тех случаях, когда код был скопирован из других GPL-программ, у владельцев прав на эти программы следует попросить прощения. Для того, чтобы начать процесс, FSF дарует свое прощение за использование всего кода, принадлежащего FSF. Это означает, что те, кто до 4 сентября 2000 года включительно использовал код FSF, в нарушение GPL компонуя (link) его с Qt (и таки образом, потерял право использовать этот код на условиях GPL), опять получают наше полное разрешение на использование этого кода при переходе на GPL-версию Qt. Я призываю всех других владельцев прав на код, связанный с этой проблемой, также даровать подобное прощение и помочь таким образом быстро решить проблему.

В ближайшее время KDE, как это и должно быть, будет основан на GPL-версии Qt, и Движение за Свободное ПО сможет рассматривать KDE/Qt как вклад в общее дело, а не как проблему. Кроме того, я думаю, что нет никакого смысла работать над другим, эквивалентным Qt, проектом. Если вам нужно что-то типа Qt, используйте Qt.

Однако у нас есть GNOME, и он не собирается исчезать.
GNOME и KDE останутся двумя соперничающими графическими интерфейсами, до тех пор, пока однажды они не объединятся - тем или иным способом. И до этого момента GNU Project будет активнейше поддерживать свою команду. Сделаем их, гномы!

Перевод Алексея Выскубова, alexey@pepper.spb.ru

[ опубликовано 20/03/2001 ]

Алексей Выскубов - Выпуск библиотеки Qt под лицензией GPL   Версия для печати