사용자가 애플리케이션을 구입하지 않는 한 애플리케이션을 컴파일할 수 없는 오픈 소스 라이선스가 있습니까?[닫은]

StackOverflow https://stackoverflow.com/questions/179764

  •  05-07-2019
  •  | 
  •  

문제

나는 수년 동안 GPL 소프트웨어를 개발해 왔지만 이제는 더 제한적인 라이센스가 필요합니다.

이것은 상업용 애플리케이션을 위한 것이며, 해당 애플리케이션을 구매했는지 여부에 관계없이 전 세계와 내 소스 코드를 공유하고 싶습니다.또한 사람들이 파생 저작물을 제작하는 것을 허용하고 싶지만 원본 저작물과 파생 저작물의 바이너리 배포를 금지하고 싶습니다.

기본적으로 원본 저작물을 이미 구매한 경우 원본 소스 코드나 파생 저작물을 컴파일하여 사용할 수 있습니다.그렇지 않으면 그들은 내 소스 코드나 파생 작업의 소스 코드만 연구할 수 있습니다.

내 요구 사항에 맞는 라이센스를 아는 사람이 있습니까? 아니면 직접 작성해야 합니까?

감사해요,

업데이트:

우선, 답변해주신 모든 분들께 감사드립니다.

몇 가지 사항을 정리하겠습니다.

  1. 이 응용 프로그램은 아직 출시되지 않았습니다.그래서 저는 XFree86과 같은 새로운 라이센스를 채택하지 않고 새로운 애플리케이션에 대한 라이센스를 선택하려고 합니다.

  2. 저는 오픈소스 대신 "자유 소프트웨어"라는 용어를 주로 사용하기 때문에 여기서는 오픈소스라는 용어를 사용했습니다.소스는 실제로 "개방형"이지만 OSI가 정의하는 방식은 아닙니다.

  3. 나는 모두 GPL을 지지하며 이전에 내가 작성한 거의 모든 소프트웨어는 GNU GPL v2에 따라 출시되었습니다.하지만 이번만큼은 예외여야 합니다.

  4. 사람들이 라이센스를 위반하더라도 나는 별로 상관하지 않습니다.내 소프트웨어를 판매하는 경우를 제외하고는 누구에게도 소송을 제기할 생각은 없습니다.

제가 아주 특별한 소프트웨어를 작성했다는 뜻은 아니지만 사람들이 내 코드를 훔쳐 돈을 버는 것을 원하지 않습니다.그러나 나는 또한 기술에 정통한 사용자가 적합하다고 생각하는 방식으로 소프트웨어를 수정할 수 있기를 바랍니다.

아, 그리고 마지막으로 애플리케이션은 컴파일된 언어(정확히 말하면 Objective-C *기침*iPhone*기침*)로 작성되었습니다.

도움이 되었습니까?

해결책

그건 아니야 OS, 공유 소스처럼 들립니다. 구체적으로, 그것은 MS-RSL과 매우 흡사합니다.

에서 위키 백과:

Microsoft 참조 소스 라이센스 (MS-RSL)

이것은 Microsoft 공유 소스 라이센스 중 가장 제한적인 것입니다. 소스 코드는 참조 목적으로 만 볼 수 있습니다. [14] 개발자는 상업적 또는 비상업적 목적으로 코드를 배포하거나 수정할 수 없습니다.

다른 팁

그건 그렇고, 사람들이 당신이 발표 한 마지막 GPL 버전을 유지하는 것을 막는 것은 전적으로 불가능할 것입니다. 소프트웨어를 사용하려는 사람이 충분하다면 커뮤니티가 GPL 버전 뒤에 구축 될 것이라는 기대 로이 벤처에 들어가야하며, 새로운 관리자는 기능을 갖춘 기능과 일치하며 파리아로 간주됩니다. 그 원에서.

나는 이것을 위협으로 의미하지는 않지만 과거에 이러한 행동을 중심으로 본 패턴으로서의 패턴으로서. XFREE86은보다 제한적인 라이센스를 채택했으며, 많은 기고자들은 그것을 X.org로 포장했으며 XFree86은 이제 오래된 자아의 그림자에 지나지 않습니다. cdrecord는 cdrtools를 begat합니다. SSH Begat Openssh. 기본적으로 실적 제한 라이센스로 전환하는 무료 소프트웨어 죽은 상업 프로젝트로 가득 차 있습니다. 이것이 당신이 원하는 것이라고 확신합니까?

대안 : 사용자가 요청 된 기능을 구매하여 GPL에 따라 해제 할 수 있습니다. 설치 및 구성 서비스를 제공합니다. 지원 계약을 판매하십시오. 판매 훈련. 이 중 하나는 귀하가 제안하는 것보다 성공할 가능성이 훨씬 높습니다.

그것은 오픈 소스 라이센스가 아닙니다. 그러나 당신은 확실히 당신이 의도 한 바를 정확하게 말하는 독점 라이센스를 가질 수 있습니다. 구성 요소를 판매하는 많은 의상은 일반적으로 지불 할 때까지 출처를 제공하지 않는다는 점을 제외하고는 말하는 것을 정확하게 수행합니다.

당신이 그렇게하는 것을 막는 것은 아무것도 없지만, 상황의 현실은 일단 당신의 출처를 이용할 수있게되면 누군가가 그것을 컴파일 할 것이라는 것입니다 (아마도 많은 사람들). 바이너리의 재분배를 방지하는 것은 얼마나 쉬운 일입니까 ... ???

라이센스로 코드를 배송 할 수 없으며 사람들에게 라이센스를 시행하지 않을 것이라고 말할 수 없습니다. 그것은 그들에게 용납 할 수없는 법적 위험을 감수하도록 요구하고 있습니다. 당신이 당신의 마음을 바꾸지 못하게하는 것은 무엇입니까? 코드 라이센스를 부여하는 약관을 정면으로 정리해야합니다.

문제는 일단 소스 코드를 문 밖으로 나가면 착륙 위치를 추적하기가 매우 어렵다는 것입니다. 당신이 어떻게 라이센스를 부여하든, 부도덕 한 사람들은 당신이 선호하는 일을하지 않을 수 있습니다.

한 가지 방법은 제공하는 것입니다 대부분, 그러나 적절한 OSI 호환 라이센스에 따른 모든 코드는 아닙니다 ( opensource.org 현재 OSI 승인 라이센스 목록). 객체 코드 양식으로 제공하는 일부 저수준 라이브러리 또는 커널. 컴파일 된 커널이 없으면 코드가 실행되지 않습니다. 사용자는 여전히 코드의 흥미로운 부분을 볼 수 있으며 원하는 경우 수정할 수 있습니다. 그들은 심지어 그것을 재분배 할 수도 있지만, 컴파일 된 저수준 커널 없이는 작동하지 않을 것입니다. 위험은 누군가가 당신의 커널을 리버스 엔지니어링 할 수 있지만, 약간의 영리함으로 당신은 그것을 어렵게 만들 수 있습니다. 리버스 엔지니어링을 금지하는 EULA와 함께 커널을 전달할 수도 있습니다. 따라서, 당신은 이것을하는 사람에 대해 법적 조치를 취할 수 있습니다. 나는 이것이 당신이 찾고있는 것을 제공한다고 생각합니다 - 코드를 공유하는 능력이 있지만 다른 사람들이 그것을 판매 할 제품으로 바꾸지 못하게합니다.

참고 : Ianal, 이것에 대한 개인적인 생각 일뿐입니다.

나는 이것이 오픈 소스 정의.

그러나 일반적으로 자동으로 컴파일 할 수없는 사람들에게 소스를 보여줄 수 있어야합니다. 당신이 여전히 모든 권리를 보유한다는 사실을 분명히 만드는 한, 컴파일 된 버전은 아마도 "파생 된 작업"으로 간주 될 것입니다.

훌륭한 프로그램이라면 사람들은 아마도 그것을 훔칠 것입니다. 나중에 고소하는 것 외에는 그에 대해 할 수있는 일은 거의 없습니다 (잡으면). 일반적으로 오픈 소스로 출시하지 않고 소스를 표시하는 것은 좋은 생각처럼 들리지 않습니다.

다른 사람들은 이미 당신이 묘사하는 것이 일반적으로 이해되는 "오픈 소스"가 아니라고 말했습니다. 상업용 라이센스로 소스를 배포하는 것을 금지하는 것은 없습니다.

사실 (그리고 또 다른 예로서), 아틀라 시안, Jira, Confluence 및 기타 보석 제조업체는 상용 제품의 라이센스를 구입하면 소스 코드를 제공합니다. 당신은 이것을 변경하고 패치하고 사용할 수 있지만 재분배 할 수는 없습니다.

(나는 일부 제품의 사용자가 아닌 Atlassian과 관련이 없습니다)

Ianal이지만 이런 종류의 일에 대한 귀하의 라이센스를 작성하는 것이 좋습니다. 나는 당신이 언급하는 것과 같은 컴파일에 특정한 라이센스를 만난 적이 없습니다. 템플릿으로 사용할 수있는 시작점으로 몇 가지 라이센스를 살펴보십시오. 법정에서 일어날 무언가가 있다는 것이 정말 진지하다면, 출판하기 전에 법적 조언이 필요합니다.

OpenSource-License (정의 당)는 요구 사항에 맞지 않습니다.

그러나 Microsoft Reference 소스 라이센스를 살펴볼 수 있습니다. Sourcecode를 볼 수 있지만 분포를 금지합니다. http://www.microsoft.com/resources/sharedsource/referencesourcelicensing.mspx

그것은 해킹적이지만 나는 그것을 본 적이 있습니다.코드를 일련의 스크린샷으로 배포하세요.

'게시'되었지만 컴파일할 수는 없습니다.

그러나 질문의 ​​핵심에 도달하려면 사람들이 소스를 컴파일하도록 허용하지 않고 소스를 배포하는 것은 분명히 아니다 풀솜 같은.

소스 코드의 실행 가능한 버전은 다음과 같이 볼 수 있습니다. 파생물 작업.

Perl, Ruby, Python 등과 같은 언어로 응용 프로그램을 작성하면 소스 코드와 실행 파일의 차이점이 사라집니다.

그럼에도 불구하고, 당신이 찾고있는 라이센스는 오픈 소스 라이센스가 아니며 제품의 전체 소스 코드 대신 알고리즘과 구현 힌트를 공유하고 싶은 것으로 보입니다. 이 경우 예제 소스 코드와 함께 알고리즘을 게시하십시오.

이런 식으로, 아무도 허가없이 제품을 다시 컴파일 할 수 없으며 (의미 : 전체 소스의 사본) 관심있는 개발자는 여전히 알고리즘을 사용하여이를 구축 할 수 있습니다.

적절한 빌드 프로세스를 구현할 수 있으므로 소스가 있더라도 적절한 '빌더'없이는 컴파일 할 수 없습니다.

이제는 매우 특별한 소프트웨어를 작성했다고 제안하지는 않지만 코드를 훔쳐서 사람들이 돈을 버는 것을 원하지 않습니다. 그러나 기술에 정통한 사용자가 어쨌든 자신이 적합한 소프트웨어를 수정할 수 있기를 원합니다.

따라서 변경 사항을 허용하고 싶지만 상업용 사용을 허용하고 싶지 않습니까?

아마도 당신은 비수적 인 비수적 인 Creative Commons와 같은 것을 찾고 있습니까?

후속 편집에서는 다음과 같이 썼습니다.

사람들이 라이센스를 위반하는지 상관하지 않습니다. 나는 그들이 내 소프트웨어를 판매하지 않는 한 누군가를 고소하는 것을 꿈꾸지 않을 것입니다.

사람들이 라이센스의 제한을 위반하는지 상관하지 않으면 새로운 제한이 관련이 없음을 의미합니다. 수정되지 않은 GNU GPL은 이전과 마찬가지로 귀하의 목적에 적합해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top