Как сдвоить лицензию на ПО с открытым исходным кодом?

Я работаю над библиотекой и хотел бы удвоить ее лицензию:

  • Одна лицензия с открытым исходным кодом для проектов с открытым исходным кодом
  • Одна коммерческая лицензия для коммерческих проектов

Однако к мне подошел организатор "кодирующего фестиваля", который хотел использовать мой проект для события кодирования с открытым исходным кодом. Я не уверен, было бы разумно позволить другим разработчикам работать над проектом, поскольку я хочу сохранить законное право на его выпуск по коммерческой лицензии, а также с открытым исходным кодом. Как мне это обработать?

PS: Лицензия с открытым исходным кодом, которую я выбрал, является лицензией GNU Affero GPLv3 (AGPLv3).

Ответ 1

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

Ответ 2

Java - это хорошо известный проект с использованием двойного лицензирования. Чтобы иметь возможность публиковать также коммерческую лицензионную Java, вам нужно подписать контракт, чтобы зафиксировать ваши патчи обратно на Sun. См. Этот URL-адрес: http://openjdk.java.net/contribute/

Особенно интересным для вас является тот факт, что сам контракт ( "Соглашение о вкладе Sun" SCA [В настоящее время OCA - "Соглашение о соглашении с Oracle" ] http://www.oracle.com/technetwork/oca-405177.pdf) лицензируется по лицензии Creative Commons-sharealike. Это позволяет использовать и изменять этот контракт для ваших нужд, пока вы сохраняете лицензию (CC-SA похожа на GPL, но для документов и данных вместо исходного кода).