Предположим, я разработал полезную библиотеку и решил опубликовать ее как открытый исходный код. Некоторое время спустя у меня возникла необходимость сделать что-то, что не соответствовало бы лицензии с открытым исходным кодом. Могу ли я это сделать?
Как мне публиковать программное обеспечение таким образом, чтобы я оставался владельцем и не блокировал себя от использования библиотеки в будущем?
Имейте в виду, что, по крайней мере, теоретически, другие разработчики могут решить внести свой вклад в мой проект с открытым исходным кодом. Могу ли я указать в лицензии, что я, как первоначальный разработчик, также получаю право собственности на их материалы? Не поймите меня неправильно, я не пытаюсь быть злым и не становиться владельцем чужой работы - я просто хочу сохранить за собой право собственности, и если кто-то опубликует важное исправление, я могу оказаться не в состоянии использовать исходный код, если Я тоже использую его работу.
источник
Ответы:
Вы всегда сохраняете право собственности на лицензии с открытым исходным кодом. Созданная вами работа является вашей собственностью, и вы можете делать с ней все, что захотите (конечно, в законных пределах), в том числе позволяя другим людям использовать ее в соответствии с условиями лицензии с открытым исходным кодом. Если вы хотите использовать его для частного проекта, вы можете это сделать, если только вы не передали права кому-либо еще по контракту. Но это не то, что делают лицензии с открытым исходным кодом. Они о том, чтобы делиться полезностью, а не о том, чтобы отказаться от собственности.
Вещи становятся немного наклейкой, когда другие люди начинают вносить свой вклад. Значит, это их работа, а не ваша, и вам нужно получить их разрешение. Одна вещь, которую вы можете сделать, это опубликовать вашу библиотеку под двойной лицензией. Это то, что делает Сэм Лантинга, основной создатель и разработчик SDL . Поскольку Apple не нравится библиотека динамических ссылок для iOS, и соблюдение LGPL в статически связанном приложении доставляет больше хлопот, чем стоит, он публикует SDL под лицензией LGPL и с коммерческой лицензией для статических приложений iPhone. Когда кто-либо представляет патч, он явно запрашивает у него разрешение на развертывание патча в библиотеке под обеими лицензиями, и если им это не нравится, он не добавляет его в кодовую базу.
РЕДАКТИРОВАТЬ: мой пример больше не точный. Некоторое время назад Сэм изменил модель (не уверен почему; возможно, он просто устал от административных хлопот) и теперь лицензирует SDL по весьма разрешительной лицензии в стиле zlib. Но он делал это так.
источник
Я не юрист, и это не юридическая консультация. Если вам нужна юридическая гарантия, наймите адвоката.
Вы абсолютно можете получить двойную лицензию на свое программное обеспечение - Trolltech много лет делал это с Qt, а Linden Lab - с клиентом SecondLife.
Вы можете использовать любую понравившуюся лицензию. Некоторые лицензии совместимы с закрытыми коммерческими средами, такими как лицензии Mozilla MPL, MIT и BSD, а также (я полагаю) лицензии Sun CDDL и Apache.
Однако, если вам нужна гибкость для выпуска вашего программного обеспечения как проекта с открытым исходным кодом, так и продукта с закрытым исходным кодом, вам абсолютно разрешено делать это как первоначальный автор. Единственная проблема - это вопрос вклада пользователей. Вы не можете включить вклады других лиц в вашу коммерческую версию программного обеспечения, если они не передадут вам Авторское право. GNU делает это по единственной причине, что они обновят свои лицензии в будущем.
Обратите внимание, что пользователям и особенно участникам, возможно, это не понравится, поэтому это повлияет на сообщество вокруг вашего проекта, вероятно, отрицательно.
Опять же, проконсультируйтесь с адвокатом для деталей.
источник
Я тоже не юрист, но ...
Помимо ограничительных (что вынуждает вас открывать исходный код каждого проекта, в котором они используются) лицензий, таких как GPL, существуют также не ограничивающие (то есть вы можете использовать такую часть программного обеспечения в коммерческом проекте), как Lesser GPL или Apache License (2.0 ?). Поэтому, возможно, вы можете просто выпустить свое программное обеспечение на неограничительных условиях.
источник