Уведомление об авторских правах GPL при добавлении новых файлов

Как я могу написать уведомление об авторских правах GPL при добавлении новых файлов, а не при изменении файла? В проекте все файлы начинаются с:

/**
 * Some open source application
 * Component Foo
 * (C) 20?? by Scruffy H. Hacker (scruffy@foo.bar)
 * Released under the GPL
 *
 * Awesome description here.
 */

Должен ли я только указать свое имя в уведомлении об авторских правах, например:

/**
 * Some open source application
 * Component Bar
 * (C) 20?? by Tobier Hackerson <tobier@foo.bar)
 * Released under the GPL
 *
 * Awesome description here.
 */

Или я должен включить оригинального создателя проекта:

/**
 * Some open source application
 * Component Bar
 * (C) 20?? by Scruffy H. Hacker (scruffy@foo.bar)
 * (C) 20?? by Tobier Hackerson (tobier@foo.bar)
 * Released under the GPL
 *
 * Awesome description here.
 */

2 ответа

Решение

IANAL

Если первоначальный автор внес какой-либо код в этот файл (например, вы скопировали один из его файлов и изменили его), то оба должны быть зачислены. Если вы написали весь код, ваше имя - все, что нужно.

Вы должны соответствовать шаблону проекта, но обычно вы добавляете что-то вроде:

* Released under the GNU General Public License

"GPL" не настолько точен, как следовало бы. Возможно, вам также потребуется указать версию. Подробности смотрите в самой лицензии ( версия 2 или версия 3). В его нынешнем виде теоретически он может быть выпущен в соответствии с версией 1 GPL, хотя вряд ли это будет то, что кто-либо имел в виду (но юристы не сочтут проблемой с этим предположить).

Версия 2 GNU GPL предлагает (в конце раздела "Как применить эти условия к вашим новым программам"):

one line to give the program's name and an idea of what it does.
Copyright (C) yyyy  name of author

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

(и еще два абзаца).

GPL - это не лицензия на копирование файлов, а на весь пакет.

Поэтому новый файл также должен быть лицензирован по лицензии GPL. Поскольку в оригинальном заголовке лицензии не указана версия GPL, вы можете выбрать любую понравившуюся версию GPL. Если вы хотите узнать больше о том, почему существует несколько версий GPL и как она работает с обновлением версий лицензий, пожалуйста, смотрите:

Поэтому после уточнения версии лицензии вы спрашиваете об заявлении об авторских правах и где разместить свое имя. Я не ваш адвокат и выступаю здесь как разработчик программного обеспечения, и мне нелегко полностью ответить на этот вопрос для всех возможных углов, поэтому я попытаюсь обрисовать свое понимание тех аспектов, которые, как я вижу, играют роль.

В соответствии с авторским правом вы объединяете несколько работ нескольких авторов. Вы создаете совместную работу. Для каждой работы в смысле авторского права у вас есть авторы и правообладатели.

Тогда для объединенной работы у вас есть и это авторское право.

Так что для отдельного файла, если вы написали его самостоятельно, скажем, это 2012 год, так как вы являетесь автором, вы можете написать свой собственный заголовок об авторских правах:

/**
 * My Extension to some open source application
 *
 *  Copyright 2012 by Tobias Eriksson <author@tobier.se>
 */

Это было бы нормально для этого файла, если он лежит на вашем жестком диске. Затем вы хотите распространить его, поэтому имеет смысл прояснить лицензию. Допустим, вы выбрали GPL-3.0+. Следуя инструкциям

и некоторые рекомендации по маркировке комментариев /docblock:

Вы можете расширить это с помощью номерного знака, как в следующем примере:

/**
 * My Extension to some open source application
 *
 *  Copyright 2012 by Tobias Eriksson <author@tobier.se>
 *
 * This file is part of some open source application.
 * 
 * Some open source application is free software: you can redistribute 
 * it and/or modify it under the terms of the GNU General Public 
 * License as published by the Free Software Foundation, either 
 * version 3 of the License, or (at your option) any later version.
 * 
 * Some open source application is distributed in the hope that it will 
 * be useful, but WITHOUT ANY WARRANTY; without even the implied warranty 
 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
 *
 * @license GPL-3.0+ <http://spdx.org/licenses/GPL-3.0+>
 */

Этот номерной знак гарантирует, что те, кто получает файл, могут видеть, под какой лицензией этот файл, какие права они имеют на код. Также они могут видеть оригинального автора с вашим заявлением об авторских правах. Самая важная часть здесь, на мой взгляд, состоит в том, чтобы прояснить: а) кто автор / владелец авторских прав и б) что такое лицензия. Так что эта информация не теряется, это видно. Если вы хотите следовать рекомендациям, которые на ваше усмотрение. Чтобы не ограничивать права своего автора, я настоятельно рекомендую оставить хотя бы имя на ваше имя, даже если в соответствии с законом это не требуется (но у вас могут возникнуть проблемы с документированием вашего авторства позже, если вы этого не сделаете, и кто-то другой поставит ее имя там).

Так что теперь вы можете предложить этот файл для добавления в апстрим. Это первый раз, когда вы свяжетесь с первоначальными авторами программного обеспечения. У них может быть свой собственный способ действий, они могут предпочесть свои собственные заголовки и т. П. Итак, вы немного покидаете юридическую основу и вступаете в социальную сферу, сотрудничество, совместную работу.

Вы можете заранее спросить, как это происходит внутри проекта, обычно есть несколько способов сделать что-то, два общих:

  • Управление лицензированием и авторскими правами для каждого файла
  • Централизованно управляйте лицензированием и авторским правом.

Подход к файлу удобен при запуске проектов. Центральный подход удобен, когда проекты становятся больше.

Индивидуальный подход немного описан выше и требует отслеживания изменений в информации о лицензировании и авторских правах / авторах для каждого файла.

В централизованном подходе принятая процедура состоит в том, чтобы иметь так называемый файл AUTHORS (и, возможно, дополнительно CONTRIBUTORS), в котором перечислены авторы программного обеспечения, и иметь файл COPYING, содержащий лицензию (если он один для всего пакета, в противном случае основной плюс дополнительные лицензии).

Может также случиться, что вы смешали обе концепции, например, весь пакет находится под лицензией GPL, но внутри кодовой базы также есть код с лицензиями MIT или BSD. Затем вы должны сохранить информацию о лицензии для этих частей, чтобы позволить возвращать изменения в исходный код для этих частей. Кроме того, авторы, которые вносят свой вклад в эти части, должны знать, что им необходимо лицензировать свои изменения в соответствии с MIT / BSD, а также сохранять лицензирование этой части. Если вы хотите узнать больше об этом и некоторые подробности о том, как и где документировать лицензирование, лучше прочитать следующее:

Центральный подход позволяет уменьшить заголовки авторских прав и номерные знаки в верхней части каждого файла:

/**
 * Some open source application
 *
 *  Copyright 2010, 2012 by it's authors. 
 *  Some rights reserved. See COPYING, AUTHORS.
 */

Если вы ищете сжатие информации, и авторы не видят своего имени в каждом файле. Вы не можете сделать это с суперзвездами, правда. Так что, возможно, существует социальный рейтинг, имя которого стоит первым и тому подобное. Однако не позволяйте себя обмануть: если вы автор, вы имеете право видеть свое имя. Если кто-то отрицает это право, вас обманывают. Это также многое говорит об уважении в (свободном) программном проекте, как вы можете себе представить.

Технически все в порядке, если вы добавляете свою строку об авторских правах сверху, потому что это вы сделали последние изменения. Лицензия только говорит о том, что вам нужно сохранить оригинальное авторское право, а не о том, что вам нужно поставить его поверх:

/**
 * Some open source application
 *
 *  Copyright 2012 by Tobias Eriksson <author@tobier.se>
 *  Copyright 2010, 2011 by Scruffy H. Hacker <scruffy@foo.bar>
 *
 *  Licensed under GNU General Public License 3.0 or later. 
 *  Some rights reserved. See COPYING, AUTHORS.
 *
 * @license GPL-3.0+ <http://spdx.org/licenses/GPL-3.0+>
 */

Может быть более распространенным / реальным примером такого докблока заголовка лицензии / авторского права. И не забывайте всегда относиться к другим авторам с таким же уважением, как и к своим. Это обычно работает лучше всего в совместных проектах, за исключением юридической стороны. Вам нужны только легалы ​​на то время, когда вещи больше не находятся на линии.

Смотрите также:

Другие вопросы по тегам