Процесс рассмотрения лицензий
Если вы обнаружите лицензию, покрывающую часть пакета Fedora, предлагаемого пакета Fedora или другого артефакта проекта Fedora, которая не указана в списках допустимых или недопустимых лицензий, пожалуйста, отправьте лицензию на рассмотрение. Лицензии классифицируются как допустимые, допустимые для определённых типов материала или недопустимые для включения в Fedora, как обсуждается в Одобрении лицензий.
Fedora приняла использование выражений SPDX вместе с рекомендациями по сопоставлению SPDX в качестве стандартной системы для представления и классификации лицензий. В большинстве случаев, когда лицензия классифицируется как допустимая, Fedora предпочитает использовать стандартные идентификаторы лицензий SPDX (содержащиеся в списке лицензий SPDX), а не пользовательские идентификаторы.
Процесс рассмотрения лицензии обычно включает эти три шага:
-
Откройте задачу fedora-license-data для рассмотрения лицензии.
-
Откройте задачу SPDX license-list-XML (обычно для запроса добавления идентификатора лицензии в список лицензий SPDX). Этот шаг не нужен, если лицензия соответствует лицензии, уже присутствующей в списке лицензий SPDX, или если лицензия определена как not-allowed.
-
После того как Fedora решит, как классифицировать лицензию, откройте запрос на слияние, чтобы добавить TOML-файл для лицензии в fedora-license-data.
Первый шаг обычно инициируется сопровождающим пакета Fedora, хотя любой участник Fedora поощряется к запросу рассмотрения лицензии. Мы предпочитаем, чтобы человек, инициирующий первый шаг, также брал на себя ответственность за второй и третий шаги, поскольку это снижает нагрузку на сопровождающих Fedora License Data и делает процесс рассмотрения лицензий более эффективным.
Лицензии сообщества программного обеспечения, которые, по-видимому, задуманы как шутки (примеры), обычно анализируются так, как если бы они были серьёзными.
Открытие задачи о рассмотрении лицензии в Fedora License Data
Чтобы запросить рассмотрение лицензии, вы должны быть участником Fedora и стать частью группы Fedora Gitlab.
Откройте новую задачу для Fedora License Data, используя шаблон задачи о рассмотрении лицензии. Обычно вам следует создавать одну задачу на лицензию, а не отправлять задачу, ссылающуюся на несколько лицензий для рассмотрения.
Если вам нужна общая помощь в определении лицензий, применимых ко всему пакету, мы призываем вас отправить задачу для этой цели. Мы применим метку package inquiry к таким задачам.
|
Озаглавьте задачу License Review: <identifying name>. (Функция шаблона задачи в Gitlab не предусматривает автоматического заголовка задачи.) Для «identifying name» используйте идентификатор SPDX, если он применим и известен. Если лицензии нет в списке лицензий SPDX, то используйте официальное или широко применяемое название лицензии либо идентификатор-заполнитель. В любом случае что-то уникальное и идентифицируемое облегчает отслеживание задач в репозитории. Подавляющее большинство задач о рассмотрении лицензий используют имя-заполнитель. Обычно это не тот идентификатор, который в конечном итоге используется для представления лицензии в Fedora License Data.
Шаблон задачи о рассмотрении лицензии попросит вас предоставить следующую информацию:
-
Название лицензии (обязательно) — вы можете использовать «identifying name», которое вы использовали в заголовке задачи, или «None», если предпочитаете
-
Текст лицензии (обязательно) — пожалуйста, предоставьте ссылку на текст лицензии или на место, откуда его можно загрузить; также включите текст лицензии в комментарий после создания задачи (особенно если это относительно краткая лицензия)
-
Название пакета Fedora и ссылка на вышестоящий исходный код пакета (обязательно)
-
Есть ли лицензия (или исключение, если ваша задача запрашивает рассмотрение выражения
WITH) в списке лицензий SPDX? (обязательно) — если да, то включите применимое выражение лицензии SPDX -
Причина рассмотрения лицензии (необязательно) — например, ссылка на задачу Bugzilla для рассмотрения пакета
Все обсуждения, связанные с рассмотрением лицензии, будут происходить в ветке задачи, и официальное решение, основанное на применении критериев одобрения лицензий Fedora, будет отмечено там. Решение иногда может быть отмечено исключительно путём применения соответствующей ограниченной метки, относящейся к классификации лицензии.
Как определить, есть ли лицензия или исключение в списке лицензий SPDX
Список лицензий SPDX имеет установленный набор рекомендаций, определяющих, что constitutes соответствие лицензии или исключению в списке лицензий SPDX. Это предназначено для обеспечения того, чтобы идентификаторы и выражения лицензий SPDX означали одно и то же везде, где они используются.
У SPDX есть некоторые рекомендации о том, как обнаруживать и сопоставлять найденные вами тексты лицензий с лицензиями в списке лицензий SPDX.
Вы также можете найти информацию о различных инструментах обнаружения лицензий в этой документации.
Открытие задачи в списке лицензий SPDX
Если сопровождающие Fedora License Data придут к выводу, что лицензия допустима, и применят метку SPDX::submit issue, то следующим шагом будет создание задачи для репозитория SPDX license-list-XML. В большинстве случаев цель задачи — запросить добавление нового идентификатора лицензии, представляющего лицензию, в список лицензий SPDX, но она также может быть направлена на запрос определения о том, можно ли добавить дополнительную разметку к существующей лицензии SPDX для соответствия найденной вами лицензии. Вам не нужно определять это при отправке задачи.
| Если лицензия, по-видимому, не соответствует идентификатору, уже присутствующему в списке лицензий SPDX, вам не нужно ждать решения Fedora License Data по лицензии, прежде чем открыть задачу SPDX. Однако обычно задача SPDX не открывается до тех пор, пока сопровождающие Fedora License Data не решат, что лицензия допустима для Fedora. |
В дополнение к обязательной информации добавьте ссылку на связанную задачу Fedora License Data. Если уже было решение Fedora относительно лицензии, пожалуйста, также отметьте это.
В некоторых случаях найденная вами лицензия может не соответствовать существующей лицензии SPDX согласно рекомендациям по сопоставлению SPDX, но она будет достаточно близка, чтобы юридическая команда SPDX могла определить, что ваш вариант может быть учтён путём пересмотра XML-файла для соответствующей существующей лицензии SPDX. Сопровождающие Fedora License Data могут поручить вам создать задачу в списке лицензий SPDX для этой цели по результатам их рассмотрения.
Если SPDX одобрит лицензию для включения в качестве идентификатора в список лицензий SPDX, пожалуйста, помогите создать файлы SPDX для вашей заявки в соответствии с процессом списка лицензий SPDX.
Если вы отправили задачу SPDX до того, как было принято решение на стороне Fedora, и сопровождающие Fedora License Data позже решили, что лицензия является not-allowed, вам следует предложить закрыть задачу SPDX, если она всё ещё находится на рассмотрении.
Для допустимых лицензий мы хотим использовать идентификаторы SPDX для представления лицензии и запрашивать новый идентификатор SPDX, если применимый не существует. Для лицензий not-allowed мы будем использовать идентификатор SPDX для представления лицензии, если она уже есть в списке лицензий SPDX, но в противном случае мы создадим идентификатор LicenseRef-, чтобы гарантировать, что все выражения лицензий в Fedora действительны в соответствии со спецификацией SPDX.
|
Процесс подачи и одобрения для включения в список лицензий SPDX может быть длительным. В качестве временной меры для смягчения задержек в рабочем процессе проект Fedora предоставит временный идентификатор лицензии с синтаксисом LicenseRef-Fedora-Temporary-, который вы можете использовать. Или AdditionRef-Fedora-Temporary- для исключений. Как только SPDX присвоит окончательный ID, вы должны заменить этот временный ID на окончательный.
Открытие запроса на слияние в Fedora License Data
После того как (1) Fedora приняла решение разрешить или не разрешить лицензию, и (2) (если применимо) процесс списка лицензий SPDX также завершён, создайте запрос на слияние для добавления нового TOML-файла для лицензии с использованием формата TOML-файла в соответствии с определённым статусом (allowed, not-allowed, allowed-fonts, allowed-documentation, allowed-content, allowed-firmware).
TOML-файл, соответствующий данной лицензии, содержит ключ expression, значение которого должно быть допустимым выражением лицензии SPDX, а имя TOML-файла включает это выражение SPDX (например, значение expression в файле MIT.toml — «MIT»).
Какое выражение лицензии SPDX использовать для нового TOML-файла Fedora License Data, зависит от классификации лицензии Fedora, а также от того, как (если вообще) лицензия была рассмотрена SPDX. Есть три типичных случая:
-
Если ваша лицензия уже соответствует идентификатору в списке лицензий SPDX (то есть не было необходимости создавать задачу в списке лицензий SPDX), используйте этот идентификатор как выражение в новом TOML-файле.
-
Если была создана задача в списке лицензий SPDX, SPDX решила добавить вашу лицензию в качестве идентификатора в список лицензий SPDX, и pull request для вашей заявки на лицензию был объединён в репозитории SPDX license-list-XML, используйте этот новый идентификатор SPDX как выражение в новом TOML-файле.
-
Если Fedora решила, что лицензия является not-allowed, и лицензия не соответствует идентификатору в списке лицензий SPDX, используйте конструкцию SPDX
LicenseRef-для создания пользовательского идентификатора для лицензии и используйте этот идентификатор как выражение в новом TOML-файле.
Существуют особые случаи, когда Fedora может использовать определённый Fedora идентификатор LicenseRef- для представления допустимой лицензии. Некоторые из причин, по которым это может произойти, включают:
-
Считается маловероятным, что лицензия соответствует рекомендациям SPDX по включению лицензий, поэтому сопровождающие Fedora License Data указали, что задача SPDX не должна создаваться. Ожидается, что это будет довольно нечасто, но может произойти для некоторых лицензий allowed-content и большинства лицензий allowed-firmware. Для получения дополнительной информации о allowed-firmware см. Обновление существующих пакетов
-
Задача SPDX для допустимой лицензии была создана, но SPDX в конечном итоге решила не добавлять лицензию в список лицензий SPDX. Ожидается, что это будет очень редко. Кроме того, в случаях, когда у Fedora есть насущная необходимость опубликовать обновление spec-файла, а SPDX не завершила своё рассмотрение, Fedora может временно использовать
LicenseRef-, который будет заменён, когда SPDX примет новый идентификатор для лицензии. -
Лицензия имеет право быть покрытой зонтичными идентификаторами лицензий
LicenseRef-Fedora-Public-DomainилиLicenseRef-Fedora-UltraPermissive. Подробнее об этих сценариях см. Обновление существующих пакетов -
Лицензия может быть представлена сложным составным выражением лицензии SPDX с использованием одного или нескольких идентификаторов из списка лицензий SPDX, но проще представить её выражением
LicenseRef-. Обычно это случаи, когда также есть некоторая польза от использованияLicenseRef-, чтобы сигнализировать, что что-то проблематично в лицензии, даже хотя Fedora решила её разрешить. Хороший пример см. в TOML-файле дляLicenseRef-Baculaи связанной задаче. -
Лицензия была классифицирована как «good» в (до-SPDX) системе Callaway, но считается, что она больше не присутствует в поддерживаемых выпусках Fedora.
Если лицензия, получившая идентификатор LicenseRef-, позже будет идентифицирована как соответствующая лицензии в списке лицензий SPDX (например, из-за более позднего добавления в список лицензий SPDX), то репозиторий Fedora License Data в идеале следует обновить, заменив TOML-файл новым TOML-файлом с использованием идентификатора SPDX.
В любом случае, когда используется LicenseRef-, необходимо скопировать текст лицензии в TOML-файл как значение ключа text.
|
Изменения в лицензировании пакетов Fedora Linux
Сопровождающие пакетов Fedora несут ответственность за регулярный мониторинг вышестоящего исходного кода своих пакетов на предмет любых изменений или дополнений лицензий. Когда лицензия меняется в вышестоящем проекте или вводится новая лицензия, применяются следующие рекомендации:
-
Если проект добавляет материал под лицензией, которая ещё не была рассмотрена для включения в Fedora, то отправьте новую лицензию на рассмотрение, следуя описанному выше процессу.
-
Если проект добавляет материал под лицензией not-allowed, то пакет больше не может быть включён в Fedora Linux, если только вы не удалите материал, покрываемый лицензией not-allowed, чтобы Fedora не распространяла ничего под этой лицензией, включая исходный код пакета. FESCo имеет полномочия блокировать обновления пакетов до версий с новыми лицензиями, которые не разрешены для Fedora.
-
Если новая лицензия допустима, обновите соответствующий тег License в spec-файле, если только нет какой-либо причины, по которой лицензия не должна учитываться в теге License. Подробности см. на странице заполнение тегов License в spec-файле.
Исторически ожидалось, что сопровождающие пакетов Fedora будут объявлять об изменениях лицензий в вышестоящем проекте, о которых они узнали, в списке рассылки Fedora devel. Это ожидание, вероятно, было основано на предположении, что любое изменение лицензии в вышестоящем проекте будет изменением всего или существенно всего кода в проекте, но это не всегда так.
Если вы не уверены в статусе новой лицензии в пакете, пожалуйста, спросите в списке рассылки Fedora legal.
Want to help? Learn how to contribute to Fedora Docs ›