회사의 내부 인트라넷 응용 프로그램에서 GPLv2 라이센스 라이브러리를 사용할 수 있습니까?


13

계약 한 회사의 내부 응용 프로그램을 만들고 있습니다. 이 응용 프로그램에서 GPLv2 라이센스 라이브러리 를 사용하려고 합니다. 일부 포인트

  1. 이 응용 프로그램은 회사의 범위 내에서 사용되어야하며 절대 공용으로 사용할 수 없습니다. 내부 회사 전용입니다.
  2. 절대로 팔리지 않을 것입니다! . 따라서 코드 판매로 직접 돈을 벌 수는 없습니다. 제품이 아닙니다.
  3. 응용 프로그램 사용에는 두 가지 형태가 있습니다
    • 콘솔 기반 exe 인 기본 형식 (GPL 라이브러리 사용). 과
    • 실행 파일을 호출하는 웹 인터페이스를 통한 사용.
  4. 소스 코드는 비공개 소스 (회사 전용)로 유지되며 적절합니다.

나는 이것에 대해 많은 질문을 해왔지만 ( 하나는 주제가 아닌 것으로 닫히고 다른 하나는 프로그래머가 표시하지 않음) 라이센스에 대한 나의 해석이 올바른지 이해하는 데 어려움을 겪었습니다.

지금까지의 이해를 바탕으로이 라이브러리를 아무 걱정없이 사용할 수 있습니다. 소스 코드를 수정하지 않거나 응용 프로그램을 배포하거나 응용 프로그램을 공개적으로 사용할 수 없습니다. 응용 프로그램은 회사 외부의 사람에게 판매되거나 배포되지 않습니다 (단, 회사의 외부 DR 시설에서 사용할 수 있음). 릴리스 된 버전 바이너리를 사용하고 소스에서 다시 컴파일하지 않을 가능성이 큽니다.

GNU FAQ 의 다음 질문은 내 생각을 뒷받침하는 것 같습니다.

GPL은 수정 된 버전의 소스 코드를 공개해야합니까?

GPL은 수정 된 버전 또는 그 일부를 릴리스 할 필요가 없습니다. 공개하지 않고 자유롭게 수정하고 비공개로 사용할 수 있습니다. 이것은 회사 (회사 포함)에도 적용됩니다. 조직은 수정 된 버전을 만들어 조직 외부로 공개하지 않고도 내부에서 사용할 수 있습니다.

그러나 수정 된 버전을 어떤 방식 으로든 일반에게 공개하는 경우 GPL에서는 수정 된 소스 코드를 GPL 하에서 프로그램 사용자가 사용할 수 있도록해야합니다.

따라서 GPL은 다른 방식이 아닌 특정 방식으로 수정 된 프로그램을 릴리스 할 수있는 권한을 부여합니다. 그러나 출시 여부는 귀하에게 달려 있습니다.

회사의 내부 인트라넷 응용 프로그램에서 GPLv2 라이센스 라이브러리를 사용할 수 있습니까?


2
이것은 회사의 변호사 나 법무관이 결정할 법적 질문입니다.
hotpaw2

1
@ hotpaw2-귀하의 제안은 분명히 장점이 있으며 한 번 제공 할 수있는 최고의 지침입니다. 세계의 모든 개발자와 함께 이러한 질문이 여전히 요청되고 여전히 어떤 경우에는 불분명합니다. 지역 관할권이 적용됩니다. 그러나이 소프트웨어를 사용하는 개발자가 명확한 답변을 얻을 수 없다면 IMO는 변호사에게 개념을 설명하고 라이센스에 대한 해석을 얻는 것이 중요합니다. 개발자가 개발자에게 해답을 찾는 방법은 다음과 같습니다.
Ahmad

@Ahmad : 제가 심각하게 불분명 한 것으로 밝혀진 유일한 측면은 저작권법을 존중해야하는 부분입니다. 파생 된 저작물, 배포 물 등 판례법을 제정하는 법률 또는 법원 판결에 따라) 아무도 그것을 알지 못할 것입니다.
David Thornley

앞에서 언급했듯이 응용 프로그램 사용에는 두 가지 형태가 있습니다. 1) 콘솔 기반 exe (GPL 라이브러리를 사용) 인 기본 형태. 2) 실행 파일을 호출하는 웹 인터페이스를 통한 사용. 첫 번째는 '시스템 호출 또는 사용자 지정 호출을 통한 GPL 라이브러리 호출입니까?'

답변:


22

모든 변형에서 GPL은 재배포 라이센스입니다. 코드를 재배포하지 않으면 전혀 적용되지 않습니다. 언젠가는 응용 프로그램에서 제품을 만들기로 결정했지만 지금은 아니라면 나중에 적용될 수 있습니다.


재분배 되지 않는 한 라이센스는 귀하에게 영향을 미치지 않습니다. 없음 물론, 당신이 전혀 확실하지 않다면 당신의 변호사에 의해 그것을 실행하고 그들이 저작권 라이센싱 법률에 익숙해야합니다.
Michael Trausch

2
다시 말해, 바이너리를 가진 모든 사람들은 버그를 수정하고 새로운 바이너리를 만들 수 있도록 해당 소스도 가지고 있어야합니다.

2
이것이 기능성을 판매하지 않고 회사 내부에서 GPLv2 웹 사이트를 사용할 수 있다는 것을 의미합니까?
Johnny_D

3

나는 당신이 대답을 인용했다고 생각합니다.

GPL에 대한 나의 지식은 당신이하고 싶은 일에 대해 아무런 문제가 없다는 것입니다.


3

여기서의 대답은 배포 의 법적 정의에 달려 있습니다.

직원에게 프로그램을 제공하여 배포하는 경우 GPL 요구 사항이 적용 되며 프로그램을받는 직원에게 소스도 제공해야합니다.

직원들에게 프로그램의 사본을 제공하는 경우 되지 분포는 당신이 그것을 배포하지 않은 것처럼, 당신은 어떤 요구 사항이 없습니다.

인용 한 FAQ는 코드를 공개적으로 사용할 필요가 없다는 것을 알려줍니다 . (즉, 거리의 임의의 사람에게입니다.)

GPLv2에서는 웹 서비스가 배포로 간주되지 않는 것이 분명합니다. 혼란스러운 콘솔 응용 프로그램입니다.

회사 변호사로부터 법률 자문을받는 것이 좋습니다.


2

그렇습니다. 그러나 하청 업체, 파트너 회사 및 기타 업체와의 협력을 고려할 수 있습니다. "내부 용으로 만"이 "파트너간에 공유"된 다음 "판매용 제품"으로 바뀌면서 많은 관리자들을 물었습니다. 그런 다음 GPL 부품을 처음부터 다시 작성하거나 소스를 인트라넷에 릴리스해야합니다.


4
OTOH, 사내 사용을 위해 개발 된 도구를 통해 돈을 버는 꿈의 대부분은 회사 고유의 응용 프로그램이 실제로 얼마나 버그가 많은지 깨달을 때 관리자가 꿈꾸고 있습니다. 라이센스는 이러한 시나리오가 발생할 때 항상 마지막으로 발생한 문제였습니다.
keppla

@keppla : 그렇습니다. 그리고 그것을 사용하십시오. 소유 시간과 GPL 사이에 반투명 경계를 유지하여 변화의시기가 오면 자신을 절망적으로 얽매이지 않게합니다. "비즈니스 비밀"은 GPL 부품에서 일부 접착제 로직의 우수한 추상화 계층으로 분리되었습니다.
SF.

1

LGPL 버전 2를 사용하면 소스 및 바이너리를 재배포 할 수 있습니다.

당신은 그것을 판매 할 수 있습니다.

실제 제한 사항은 다음과 같습니다.

라이브러리를 수정하여 배포하는 경우 라이브러리에 대한 변경 사항을 공개적으로 해제해야합니다. LGPL의 포인트 2를 읽으십시오.

수정하지 않으면 실제로 문제가 없습니다.


0

나는 그것이 문제가 될 것이라고 생각하지 않습니다. GPL 코드를 사용하지만 사용자가 소스 코드 형식으로 사용할 수없는 웹 응용 프로그램은 GPLv3이 GPLv2에 비해 변경되어 "루프 홀 (loophole)"을 닫는 문제 중 하나입니다. 이것은 거의 같은 질문처럼 보입니다.

라이브러리가 정확히 무엇인지에 따라 전체 문제를 피하는 또 다른 확실한 방법은 라이브러리 주위에 매우 간단한 래퍼를 만드는 것입니다. 라이브러리가 GPL 인 경우 래퍼 GPL되어야 할 수도 있지만 인터페이스가 명확하게 분리되어 있으면 래퍼 코드의 라이센스가 없어야합니다 (거의 그렇지는 않지만 적절하게 숙련 된 법률 전문가와상의하십시오) 실무자)는 주 응용 프로그램의 라이센스 요구 사항에 영향을 미칩니다.


0

이 모든 "프로그래머-프로그래머"조언에서 그 어느 것도 법률 고문이 아님을 기억하는 것이 중요합니다. 이 스레드가 분명하기 때문에 GPL과의 해석의 여지가 있습니다.

GPL을 위반하는 것보다 건전하고 법적인 의견을 얻는 경우 조직을 법적 조치에 노출시키는 비용을 고려해야합니다 . 이 글에는 좋은 아이디어가 있지만,이 입력만으로는 결정하지 않을 것입니다.

-

예를 들어, 주름이 있습니다. GPL 코드가 JavaScript 인 경우 어떻게됩니까?

사용자가 GPL의 JavaScript 코드를 사용하여 웹 사이트에 액세스하면 기술적으로 "소스 코드"(이 경우 JS 파일)가 최종 사용자에게 "배포"됩니다. 그것은 당신의 전체 웹 사이트가 GPL되어야한다는 것을 의미합니까? 있다 그것에 대해 전체 토론 도.

위험을 고려할 때 다음 근면 한 사람만큼 변호사에게 돈을 지불하는 것을 싫어하지만, 이것은 인터넷 조언에 의존하지 않는 것이 좋습니다 (물론이 조언을 제외하고는).


관련이 없음-OP가 완전히 내부 애플리케이션을 요구하고 있습니다. 이 경우 어떤 GPL 버전도 배포 할 필요가 없으며 (GPL과 호환되지 않는 소프트웨어에 연결하는 데 문제가있을 수 있음) Gnu FAQ는 요구 사항이 부족한 문제를 직접 해결합니다.
David Thornley

-1

이전 포스터에서 말했듯이 GPL 라이센스는 응용 프로그램을 릴리스 한 경우에만 적용되며, 내부 용으로 만 남아 있으면 아무런 문제가 없습니다. 그러나 이것이 변화하는 경우에 관계없이 의미를 고려할 가치가 있습니다.

라이센스에 대한 기본적인 이해는 소스 코드를 수정 한 다음 원하는 경우 결과 응용 프로그램을 판매 할 수 있다는 것입니다. 그러나 소스 코드를 변경 한 사람을 포함하여 요청하는 사람이 소스 코드를 사용할 수 있도록하는 조건입니다.

컴파일 된 라이브러리의 경우 GPL의 코드는 기본 코드베이스와 분리되어 있으므로 컴파일 된 라이브러리의 소스 코드 만 릴리스하면됩니다. 나머지 코드베이스는 아닙니다.

라이브러리가 컴파일되지 않은 곳, 즉 PHP 응용 프로그램에서 분리가 여전히 존재한다고 생각합니다. 예를 들어, 애플리케이션이 오픈 소스 라이브러리를 사용하여 PDF를 생성한다고 가정하십시오. PDF 생성 코드를 수정하면 라이센스가 적용되며 개선 사항을 릴리스해야하지만이 라이브러리를 사용하는 애플리케이션 내 코드는 해제 할 필요가 없습니다. .

오픈 소스 라이브러리에 링크 할 경우 코드를 오픈 소스로 지정해야하는 GPL v3에서 변경된 사항입니다.


1
"컴파일 된 라이브러리의 소스 코드 만 공개해야합니다."-GPL이 아닌 LGPL에 대해 설명합니다. GPL은 라이브러리에 링크하면 응용 프로그램이 라이브러리의 파생 작업이므로 GPL 자체에 종속된다는 가정하에 작동합니다.
Sean McMillan

-2

응용 프로그램 자체도 GPL이므로 직원이 해당 응용 프로그램을 재배포하는 것을 금지하는 것이 좋은지 확실하지 않습니다. "내부 응용 프로그램"이라고 생각하는 것이 소스 코드와 함께 (법적으로?) 유출 될 수 있습니다.


'응용 프로그램 자체도 GPL이므로'에 대해 자세히 설명하십시오. 당신은 무엇을 말하는가? 누구든지 GPL 라이브러리를 가져 와서 배포하고 싶다면 라이센스는 지금까지 이해 한 것부터 시작됩니다. 인트라넷 응용 프로그램 (콘솔 n 웹)은 배포 용이 아니며 직원이 회사 응용 프로그램을 '재배포'하기로 결정한 경우 그 이후로 오랫동안 직원이되지 않을 것입니다.
Ahmad

콘솔 기반 EXE는 GPL 라이브러리를 사용하기 때문에 GPL이므로 GPL은 액세스 권한이있는 사람이 자유롭게 재배포 할 수 있어야합니다. 그렇습니다. 직원은 그렇게해서 직장을 잃을 수도 있지만 GPL의 EXE를 소스와 함께 재배포 할 권리 가 있습니다. 그러나 다른 규칙과 법률 (예 : 영업 비밀)이 적용될 수 있습니다. GPL이 부여한 업무를 담당하는 "불완전한"직원을 실제로 보유 할 수 있는지 변호사에게 문의하십시오.
zvrba

질문을 다시 읽으십시오. 대부분의 답변이 귀하와 동의하지 않는 것 같거나 우리 모두 빠진 것이 있습니까? 응용 프로그램 (GPL이 포함 된 부분 포함)은 배포 / 재배포를위한 것이 아니며 판매용이 아닌 공개용이 아닌 내부 용으로 만 사용됩니다. GPL 라이브러리는 어떤 식 으로든 수정되지 않습니다. Google은 수정 된 버전의 Linux 커널을 내부 용으로 만 사용하며이 버전을 배포하지 않음을 알고 있습니다. 나는 내부 사용만을 강조했다.
Ahmad

응용 프로그램을 배포할지 여부는 관련이 없습니다. GPL은 다음과 같이 명확합니다. GPL 작업을하는 사람은 누구나 자유롭게 배포 할 수 있습니다 (소스 코드를 요구할 수 있음). GPL 라이센스가 허용하는 것처럼 GPL 작업을 배포하기로 선택한 경우 직원에게 어떤 조치를 취할 수 있는지 변호사와 상담하십시오.
zvrba

1
응용 프로그램은 GPL 라이브러리를 포함하여 자동으로 GPL 이 아닙니다 . 그러나 GPL 라이브러리가 포함 된 앱 을 배포 하려면 GPL 호환 라이센스로 라이센스를 받아야합니다. 제 7 GPL V2는 상태 : 다음 결과로 모든에서 프로그램을 배포 할 수 없습니다,이 라이센스 및 기타 관련 의무하에 동시에 의무를 충족하기 위해 당신이 그렇게 배포 할 수 없습니다. 따라서 회사 응용 프로그램 코드를 배포 할 권한이 없으면 응용 프로그램을 배포 할 수 없습니다.
KeithB
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.