Всі версії специфікації можна знайти за адресою <>.

Специфікація REUSE – версія 3.0

2019-08-07

Ви читаєте неофіційний переклад оригінальної сторінки.

Ця специфікація визначає стандартизований метод оголошення авторських прав і ліцензування для програмних проєктів. Мета специфікації полягає в тому, щоб мати однозначну, людино- і машинозчитувану інформацію про авторські права та ліцензування для кожного окремого файлу в проєкті. В ідеалі ця інформація вбудована в кожен файл, так що інформація зберігається при копіюванні файлу і повторному їх використанні третіми особами.

Ця специфікація впроваджує IETF RFC 2119: Ключові слова для вживання у RFC для вказання рівнів вимог.

Історію редакцій цієї специфікації перегляньте у журналі змін.

Визначення

Ось визначення деяких термінів, що використовуються в цій специфікації:

  • Проєкт — будь-яка одиниця вмісту, яка може бути пов’язана з розповсюдженням програмного забезпечення. Як правило, проєкт складається з одного або кількох файлів. Також іноді називають пакунком.

  • Файл ліцензії — файл, що містить текст ліцензії.

  • Інформація про авторське право та ліцензування — інформація, в якій перелічено власників авторських прав на файл або роботу, і описано, за якими ліцензіями доступні файл або робота.

  • Специфікація SPDX — специфікація SPDX, версія 2.1; доступна на https://spdx.org/specifications.

  • Ідентифікатор SPDX — Короткий ідентифікатор SPDX, як визначено у Специфікації SPDX. Перегляньте також короткий вступ і приклади https://spdx.org/ids.

  • Вираз ліцензії SPDX — як визначено у специфікації SPDX.

  • Список ліцензій SPDX — список поширених ліцензій і винятків; доступний на https://spdx.org/licenses/.

  • DEP5 — Машинозчитуваний debian/copyright, версія 1.0. Якщо специфікація REUSE та DEP5 мають розбіжності, специфікація REUSE має пріоритет. Зокрема, у випадку з тегами Copyright і License.

  • Інструмент REUSE — допоміжний інструмент для дотримання цієї специфікації; доступний на https://github.com/fsfe/reuse-tool.

Файли ліцензій

Проєкт ПОВИНЕН включати файл ліцензії для кожної ліцензії, за якою ліцензуються файли в Проєкті.

Кожен файл ліцензії ПОВИНЕН бути розміщений у каталозі LICENSES/ у корені проєкту. Назва файлу ліцензії МАЄ бути SPDX-ідентифікатором ліцензії, за яким слідує відповідне розширення файлу (наприклад: LICENSES/GPL-3.0-or-later.txt). Файл ліцензії ПОВИНЕН бути у форматі звичайного тексту.

Якщо ліцензія не існує у списку ліцензій SPDX, її SPDX-ідентифікатор МАЄ бути LicenseRef-[idstring], як визначено у специфікації SPDX.

Проєкт НЕ ПОВИНЕН містити файли ліцензій для ліцензій, за якими не ліцензований жоден із файлів у проєкті.

Усе, що стосується ліцензій у цьому розділі, також стосується ліцензійних винятків, за винятком тих, що НЕ можуть мати ліцензійного винятку, якого немає у списку ліцензій SPDX.

Відомості про авторські права та ліцензування

Кожен файл у проєкті ПОВИНЕН містити відомості про авторські права та ліцензування, пов’язану з ним, за винятком таких файлів:

  • Файли ліцензії.

  • Файли, що належать до системи контролю версій Проєкту (наприклад: .git/).

  • Файли, проігноровані системою контролю версій (наприклад: Файли, перелічені в .gitignore).

  • Файли в каталозі .reuse/ в корені проєкту. Цей каталог повинен містити лише файли, що стосуються роботи засобу REUSE.

Існує два способи пов’язування відомостей про авторські права та ліцензування з файлом.

Коментарі в заголовку

Щоб впровадити цей метод, кожен звичайний текстовий файл, який може містити коментарі, ПОВИНЕН містити коментарі у верхній частині файлу (заголовок коментаря), які оголошують відомості про авторські права та ліцензування цього файлу.

Якщо файл не є звичайним текстовим файлом або не дозволяє включати коментарі, заголовок коментаря, який оголошує відомості про авторські права та ліцензування файлу, ПОВИНЕН бути в суміжному файлі з тією самою назвою з додатковим розширенням .license. (приклад: cat.jpg.license, якщо джерельний файл — cat.jpg).

Заголовок коментаря ПОВИНЕН містити один або більше тегів SPDX-FileCopyrightText та один або більше тегів SPDX-License-Information. Після тегу ставиться двокрапка, за якою йде текстове значення, і завершується тег новим рядком.

Тег SPDX-FileCopyrightText ПОВИНЕН супроводжуватися повідомленням про авторські права, як описано у .

Замість тегу SPDX-FileCopyrightText МОЖЕ застосовуватися символ © або слово Copyright, і в цьому випадку двокрапка не потрібна.

Тег SPDX-License-Identifier ПОВИНЕН супроводжуватися дійсним виразом ліцензії SPDX, що описує ліцензування файлу (наприклад: SPDX-License-Identifier: GPL-3.0-or-later OR Apache-2.0). Якщо окремі розділи файлу ліцензуються по-різному, для кожного розділу ПОВИНЕН бути включено свій тег SPDX-License-Identifier.

Приклад заголовка коментаря:

# SPDX-FileCopyrightText: 2016, 2018-2019 Jane Doe <jane@example.com>
# SPDX-FileCopyrightText: 2019 Example Company
#
# SPDX-License-Identifier: GPL-3.0-or-later

DEP5

Крім того, відомості про авторські права та ліцензування МОЖУТЬ бути пов’язані з файлом через файл DEP5. Передбачуваний випадок використання цього методу — великі каталоги, до яких включення заголовка коментаря в кожен файл (або в супутні файли .license) неможливе або небажане.

Файл DEP5 ПОВИНЕН мати назву dep5 і зберігатися в каталозі .reuse/ у корені проєкту (тобто .reuse/dep5).

За тегом License ПОВИНЕН слідувати дійсний вираз ліцензії SPDX, що описує ліцензування пов’язаних файлів.

Тег Copyright ПОВИНЕН супроводжуватися повідомленням про авторські права, як описано в .

Приклад файлу DEP5:

Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: Project
Upstream-Contact: Jane Doe <jane@example.com>
Source: https://example.com/jane/project

Files: po/*
Copyright: 2019 Translation Company
License: GPL-3.0-or-later

Формат повідомлень про авторські права

Повідомлення про авторські права МАЄ передбачати тег, символ або слово, що позначає повідомлення про авторські права, як описано у цій специфікації.

Повідомлення про авторські права ПОВИННО містити ім’я власника авторських прав. Повідомлення про авторські права ПОВИННО містити рік публікації та контактну адресу власника авторських прав. Порядок цих повинен бути таким: рік, ім’я, контактна адреса.

Рік публікації МОЖЕ бути один рік, кілька років, або проміжок років.

Власником авторських прав МОЖЕ бути фізична особа, список осіб, група, юридична особа або будь-який інший дескриптор, за яким можна легко ідентифікувати власника(ів) авторських прав.

Будь-яка контактна адреса ПОВИННА розміщуватися між кутовими дужками.

Приклади правильних повідомлень про авторські права:

SPDX-FileCopyrightText: 2019 Jane Doe <jane@example.com>
SPDX-FileCopyrightText: © 2019 John Doe <joe@example.com>
© Example Corporation <https://corp.example.com>
Copyright 2016, 2018-2019 Joe Anybody
Copyright (c) Alice