В настоящее время я занимаюсь своими аспирантурами с акцентом на анализе данных/информатике в контексте исследований и разработке полезных инструментов для глобального исследовательского сообщества, причем подавляющее большинство моих предполагаемых пользователей являются скорее компьютерными новичками. Другими словами, большинство моих пользователей не будут беспокоиться (или быть в состоянии) собирать необходимые зависимости и помещать их в свои пути к классам. Чтобы люди не игнорировали мое программное обеспечение, я распространял его как "жир-банку" со всеми зависимостями, содержащимися в одном исполняемом файле.
Я немного читал о лицензировании программного обеспечения и понял, что это может быть юридически сложно сделать, не обращая внимания на отдельные лицензии библиотек. Я рассмотрел ряд вопросов здесь, в StackOverflow (полная коллекция ниже), но в итоге все больше и больше путался. Обратите внимание, что я полностью осведомлен о том, что есть много других вопросов о лицензировании программного обеспечения, но не в контексте автономных пакетов, я перечислил множество замечательных вопросов ниже, которые дают немного головоломки, но не прямолинейны ответьте в моем сценарии.
Я был бы очень признателен, если бы разработчики, которые более опытно/хорошо читали этот вопрос, могли пролить свет на это, подтвердив или отрицая приведенные ниже утверждения. Я думаю, что это может быть полезно для людей, которые не являются программистами, а профессией, но все больше и больше занимаются программированием. Я понимаю:
-
Пока вы не перераспределяете свои зависимости, на самом деле не имеет значения, какие у них лицензии, по сравнению с той лицензией, которую вы выбрали для своего проекта. [К сожалению, этот путь также означал бы, что я буду отчуждать/запугивать значительную часть моей базы данных]
-
Если вы перераспределяете все свои зависимости, тогда ваша проектная лицензия должна быть совместима с вашими зависимостями. [Таким образом, я как разработчик должен знать детали лицензий для каждой зависимости?]
-
GPL является самой строгой лицензией с открытым исходным кодом (из общих), поэтому, если я использую библиотеку под лицензией GPL, мой собственный проект также должен быть под GPL, что теоретически может противоречить с лицензией какой-либо другой зависимости.
-
Предполагая, что мой проект находится под GPL, тот факт, что проект является некоммерческим, не имеет значения, он также должен быть открытым исходным кодом. [Это довольно сложно в моей ситуации, поскольку алгоритмы и вычислительные методы должны быть "новыми" для публикации]
Я неправильно понял или просто пропустил что-то важное или это хорошее резюме ситуации? Учитывая мою ситуацию, есть ли у меня другие варианты, о которых я, возможно, не упомянул здесь или думал, например, можно ли избежать проблем с лицензиями для моих зависимостей?
Литература:
Должен ли я быть связан с большим количеством зависимостей?
Какие лицензии совместимы друг с другом?
Где я могу найти авторитетный обзор лицензий с открытым исходным кодом?
Как выбрать лицензию с открытым исходным кодом?
Поиск некоммерческой лицензии на исходный код
Правильное применение лицензии с открытым исходным кодом (в частности этот ответ by @Michael Aaron Safyan)
Как найти лицензию с открытым исходным кодом, подходящую для моего проекта?