Лицензия GPL для модифицированного Discourse на собственном сайте

Я планирую использовать Discourse на своём будущем сайте (спасибо за создание отличного программного обеспечения).

Если я внесу некоторые изменения (не обязательно в виде плагина), требуют ли они, чтобы мои изменения также были распространены под лицензией GPL?

  • Изменения будут использоваться только на моём сайте.
  • Я понимаю, что GPL применяется только к «распространению». Однако программное обеспечение вроде Discourse всегда включает фронтенд-часть, которая передаётся браузеру. Делает ли это все изменения предметом лицензии GPL?

Аналогичный вопрос для плагинов: будут ли все плагины распространяться под лицензией GPL?

Все, кто пробовал это делать, сильно жалели. Вы хотите вносить изменения через плагины и темы.

Вы можете использовать плагины и темы, которые не распространяются публично.

Спасибо.

А как насчет случая, когда разработчик создает большое веб-приложение, частью которого является Discourse? Например:

  • социальная сеть с компонентом форума
  • использование Discourse не как типичного форума, а, скажем, в качестве раздела комментариев к статье.

Будет ли все приложение обязано использовать лицензию GPL?

Я понимаю, что обсуждения здесь не являются юридической консультацией, но буду признателен за предварительную обратную связь.

Полагаю, что аргумент Джей был не правовым. Вы хотите сохранить возможность обновлять и заново разворачивать Discourse в один клик. Все технические изменения должны реализовываться через плагины или компоненты тем. Существует готовая поддержка API, SSO, OAuth и вебхуков, и у вас всегда есть возможность разместить компонент Discourse на поддомене того же домена. Используйте эти функции для интеграции с дополнительным программным обеспечением. Рассмотрите альтернативу: кошмар ручного слияния изменений ядра и решения кастомных задач миграции. Это неприятно, рискованно и… дорого!!!

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

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

Уже существует множество плагинов для интеграции с такими сервисами, как:

  • Авторизация через Facebook
  • Steam
  • WeChat

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

Команда Discourse сделала платформу очень гибкой благодаря плагинам, темам и компонентам тем, а также возможности использовать CSS и скрипты.

Я бы скорее рекомендовал изучить возможности Discourse, чтобы понять, как его можно адаптировать без радикальных прямых изменений.

Существует даже плагин для социального чата под названием Babblechat.

Мой ответ был техническим. Если вы не планируете иметь команду из нескольких человек, которые занимаются исключительно слиянием новых изменений, вам следует разработать плагины для решения вашей проблемы. Тогда ваши юридические опасения становятся неактуальными.

Не уверен, что это имеет значение в любом случае. Основная проблема заключается в том, что если вы сделаете форк Discourse, мы не сможем оказать какую-либо поддержку.

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

Спасибо всем за ваши мнения. Я нашел эту статью с хорошим обсуждением. Код на стороне клиента должен распространяться под лицензией GPL, но не код на стороне сервера.

Кажется, вы упускаете суть? Если вы создадите плагин на GitHub и разместите его в приватном репозитории, у вас будет полный контроль над модификациями Discourse (хотя и через подход плагинов), а также полная собственность и контроль над этими изменениями. Никто другой их не увидит, и вам не стоит опасаться каких-либо юридических последствий, насколько мне известно. При этом вы сможете использовать преимущества поддерживаемых изменений ядра.

Плагин даёт вам возможность изменять как фронтенд, так и бэкенд.

Форк и модификация Discourse очень быстро превратятся в хаос, независимо от юридической ситуации, поэтому такой подход не рекомендуется.

Роберту, возможно, лучше дать ссылки на высококастомизированные настройки Discourse, чтобы улучшить его понимание, а также на некоторые из более мощных плагинов и тем.