Страница 1 из 1

Blender и SPDX

Добавлено: 14 фев 2025 08:00
sungreen
SPDX (Software Package Data Exchange) — это открытый стандарт для обмена информацией о лицензиях и авторских правах, связанных с программным обеспечением. Он был разработан для упрощения управления лицензиями и соблюдения требований в проектах с открытым исходным кодом.

SPDX предоставляет:
  • Стандартизированный формат для описания лицензий и информации об авторских правах.
  • Список идентификаторов лицензий (SPDX License List), который включает в себя короткие уникальные идентификаторы для распространённых лицензий (например, MIT, Apache-2.0, GPL-3.0).
  • Структуру для документирования лицензий и авторских прав в проектах.
Использование SPDX помогает разработчикам и компаниям:
  • Упростить анализ лицензионных обязательств.
  • Уменьшить риски, связанные с нарушением лицензий.
  • Упростить обмен информацией о лицензиях между проектами и организациями.
SPDX активно используется в экосистеме открытого ПО, а также поддерживается многими инструментами для анализа лицензий, такими как FOSSology, ScanCode и другие.

Добавление информации о лицензии в формате SPDX в код — это хорошая практика, которая помогает явно указать условия использования вашего программного обеспечения. Вот как это можно сделать:
1. Использование файла LICENSE
В корне вашего проекта создайте файл LICENSE, в котором укажите полный текст лицензии.

2. Добавление SPDX-идентификатора в файл
В начале каждого файла с исходным кодом добавьте комментарий с указанием SPDX-идентификатора лицензии. Например:

Код: Выделить всё

# SPDX-License-Identifier: MIT
# Copyright (c) 2025 Your Name or Organization

def hello_world():
    print("Hello, world!")
3. Использование файла README.md или NOTICE

Если вы хотите предоставить дополнительную информацию о лицензии, вы можете добавить её в файл README.md или NOTICE.

4. Использование инструментов для автоматизации

Если ваш проект большой, вы можете использовать инструменты для автоматического добавления SPDX-идентификаторов в файлы. Например: REUSE Tool (https://reuse.software/) — инструмент для добавления и проверки SPDX-информации в проектах. FOSSology — система для анализа лицензий и управления ими.

5. В файлах проекта Blender

SPDX-License-Identifier упоминается в файлах проекта Blender около 16К раз.
В основном это:
  • SPDX-License-Identifier: GPL-2.0-or-later
  • SPDX-License-Identifier: MIT
  • SPDX-License-Identifier: Apache-2.0
  • SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  • SPDX-License-Identifier: PSF-2.0 AND (MIT OR Apache-2.0)
  • SPDX-License-Identifier: BSD-3-Clause
  • SPDX-License-Identifier: BSD-3-Clause and Apache-2.0
  • SPDX-License-Identifier: BSL-1.0
  • SPDX-License-Identifier: Zlib
Таким образом, добавление SPDX-информации делает ваш проект более прозрачным и удобным для использования другими разработчиками.