Руководства · 01

Что такое копилефт

Смысл и механизм копилефта, различия между сильным копилефтом (GPL), слабым копилефтом (LGPL, MPL, EPL) и сетевым копилефтом (AGPL), момент возникновения обязанностей и частые заблуждения.

Последняя проверка: 2026-09-23

Как защитить свободу с помощью авторского права

Копилефт (copyleft) — игра слов на основе копирайта (copyright). Это понятие, созданное в 1980-х годах Ричардом Столлманом и Фондом свободного программного обеспечения (FSF) для проекта GNU, — механизм, который использует авторское право, чтобы свобода ПО не исчезала. Правообладатель разрешает всем использовать, изменять и распространять ПО, но ставит одно условие: «распространяя то, что создано на основе этого кода, вы должны дать получателям те же свободы».

У разрешительных лицензий (MIT, BSD, Apache) такого условия нет. Поэтому кто-то может изменить разрешительный код и продавать его как закрытый продукт. Копилефт препятствует этому и оставляет открытыми и улучшенные версии. Из-за этого свойства лицензии с копилефтом называют также «взаимными» (reciprocal).

Обязанности возникают при «распространении»

Условия копилефта срабатывают, когда код передаётся другим. В GPL-3.0 это называется «convey» (передача).

Три вида по охвату

Сильный копилефт

Типичные представители — GPL-2.0 и GPL-3.0. Всё, что объединено с кодом GPL в одну программу и распространяется, должно следовать условиям GPL. Позиция FSF: если части образуют одну программу, это объединение — будь то статическая или динамическая компоновка.

Слабый копилефт

Лицензии с более узким охватом обязанностей.

Сетевой копилефт

AGPL-3.0 обязывает предоставлять пользователям исходный код уже при предоставлении изменённой программы по сети. Она создана, чтобы закрыть пробел GPL в эпоху веб-сервисов.

ЛицензияОбъём раскрытияЕсли только запускать на сервере
GPL-2.0 / GPL-3.0Вся объединённая программаОбязанностей нет
LGPL-2.1 / LGPL-3.0Библиотека и её измененияОбязанностей нет
MPL-2.0Изменённые файлы MPLОбязанностей нет
EPL-2.0Код EPL и изменения (модуль)Обязанностей нет
AGPL-3.0Вся объединённая программаДля изменённой версии — предоставить исходный код

Частые заблуждения

Вопросы для решения о копилефте

  1. Устраивает ли вас, если изменения вашего кода попадут в закрытые продукты?
  2. Что важнее — широкое распространение как библиотеки или возврат улучшений?
  3. Основная форма использования — устанавливаемое ПО или сервис, работающий на сервере?

По ответам на эти три вопроса мастер выбора сузит список вариантов. Подробное сравнение — в статье Разрешительные лицензии и копилефт.

Эта статья содержит общую информацию и не является юридической консультацией. Важные решения обсуждайте со специалистами.

Источники