자체 웹사이트용 수정된 Discourse의 GPL 라이선스

앞으로 운영할 웹사이트에 Discourse를 도입하려고 합니다(훌륭한 소프트웨어를 만들어 주셔서 감사합니다).

수정을 가할 경우(플러그인 형태가 아니더라도), 해당 수정 사항이 GPL 라이선스에 적용되나요?

  • 수정 사항은 제 웹사이트에서만 사용됩니다.
  • GPL은 배포(distribution) 시에만 적용된다는 점은 알고 있습니다. 하지만 Discourse와 같은 소프트웨어는 브라우저로 전달되는 프론트엔드 부분이 항상 존재합니다. 이 경우 모든 수정 사항이 GPL에 해당하게 되나요?

플러그인의 경우도 마찬가지입니다. 모든 플러그인이 GPL 라이선스 아래에 놓이게 되나요?

그렇게 해본 사람들은 모두 후회했습니다. 수정 사항은 플러그인과 테마에서 수행해야 합니다.

공개적으로 배포되지 않는 플러그인과 테마를 사용할 수 있습니다.

감사합니다.

개발자가 Discourse를 일부로 포함하는 더 큰 웹 애플리케이션을 만든다면 어떨까요? 예를 들어 다음과 같은 경우입니다.

  • 포럼 구성 요소를 갖춘 소셜 미디어 앱
  • 일반적인 포럼 앱과 다르게 Discourse를 사용하는 경우, 예: 기사를 위한 댓글 섹션으로 사용

이 경우 전체 앱에 GPL 사용이 의무화되나요?

여기서의 논의가 법적 자문이 아님을 인지하고 있습니다만, 초기 피드백을 듣고 싶습니다.

제이님의 말씀은 법적 문제보다는 다른 측면에서였을 것 같습니다. 원클릭으로 업그레이드하고 처음부터 Discourse를 다시 배포할 수 있는 능력을 유지하고 싶으실 겁니다. 모든 기술적 수정 사항은 플러그인 또는 테마 컴포넌트로 처리해야 합니다. 기존에 API, SSO, OAuth, 웹훅 지원 기능이 있으며, 항상 동일한 도메인 내 서브도메인에 Discourse 요소를 호스팅할 수 있는 선택권이 있습니다. 이러한 기능을 활용하여 추가 소프트웨어와 통합하세요. 대안을 생각해 보세요: 코어 변경 사항을 수동으로 병합하고 맞춤 마이그레이션을 처리해야 하는 악몽 같은 상황이 됩니다. 불쾌하고 위험하며… 비용도 많이 듭니다!!!

플러그인을 사용하면 코어 소프트웨어를 광범위하고 다양한 방식으로 수정할 수 있습니다. 기술적으로 그 가능성은 무한합니다. 이렇게 하는 것은 변경 사항을 올바른 방식으로 통합하도록 강제하여, 더 견고하고 신뢰할 수 있는 솔루션을 만들어낼 뿐만 아니라, 메인 앱의 기능과 무결성을 위해 코어 팀이 기울인 모든 노력을 활용할 수 있게 해줍니다.

소셜 미디어 앱의 경우, Discourse 포럼과의 연결을 용이하게 하는 플러그인을 사용할 수 있다는 점을 염두에 두시기 바랍니다.

이미 다양한 플러그인이 만들어져 있으며, 다음과 같은 기능을 사용할 수 있습니다:

  • Facebook 인증
  • Steam
  • WeChat

그 외 더 많은 기능도 있습니다. 직접 수정하거나 포크를 만들 경우, 보안 문제와 버그가 발생할 수 있으며, 이는 여러분과 팀이 스스로 해결해야 합니다.

Discourse 팀은 플러그인, 테마 및 테마 컴포넌트, 그리고 CSS와 스크립트를 통해 시스템이 매우 커스터마이징 가능하도록 만들었습니다.

대대적인 직접 수정 없이 Discourse가 제공할 수 있는 기능을 탐색하여 어떻게 활용할 수 있는지 살펴보는 것이 더 좋습니다.

Babblechat이라는 소셜 채팅 플러그인도 있습니다.

제 답변은 기술적인 것이었습니다. 새로운 변경 사항을 병합하는 데만 전념하는 여러 명으로 구성된 팀을 구성할 계획이 아니라면, 문제를 해결하기 위해 플러그인을 개발해야 합니다. 그렇게 하면 법적 우려는 더 이상 의미가 없어집니다.

어떤 경우든 그것이 실질적인 차이가 있을지 확신은 없습니다. 근본적인 문제는 Discourse를 포크하면 어떤 지원도 제공하지 못한다는 점입니다.

지원되는 확장 방식은 플러그인, 테마, 그리고 컨테이너 yml의 훅 사용뿐입니다. 이 방법들을 통해 달성할 수 있는 것에 한계가 없으며, 포킹은 전혀 의미가 없습니다.

모두의 의견에 감사드립니다. 좋은 논의가 담긴 이 글을 찾았습니다. 클라이언트 측 코드는 GPL로 배포해야 하지만, 서버 측 코드는 그렇지 않습니다.

의도를 오해하고 있는 것 같네요? GitHub에서 플러그인을 만들어 프라이빗 저장소에 올리면, 플러그인 방식이지만 Discourse를 수정하는 데 대해 전적인 통제권을 가지게 됩니다. 또한 해당 변경 사항에 대한 소유권과 통제권도 완전히 갖게 되죠. 다른 사람은 이를 볼 수 없으며, afaia(아는 한)로 법적 영향에 대해 걱정할 필요도 없습니다. 이 모든 것을 하면서도 지원되는 코어 변경 사항의 이점을 누릴 수 있습니다.

플러그인은 프론트엔드와 백엔드를 모두 수정할 수 있는 기능을 제공합니다.

법적 상황과 무관하게, Discourse를 포크하고 수정하는 것은 매우 혼란스럽고 빠르게 복잡해질 수 있으므로 권장하지 않습니다.

로버트에게는 Discourse의 고도로 커스터마이징된 설정에 대한 링크를 제공하거나, 더 강력한 플러그인과 테마 중 일부를 공유하는 것이 그의 이해도를 높이는 데 더 도움이 될 수 있습니다.