[컴퓨터 - PC활용] 오픈소스 - 라이선스 파일(txt)
오픈소스 프로젝트를 운영하거나 만들 때 사용하면 좋은 라이선스를 몇 가지 정리해보았다.
프로젝트를 만들고, 해당 라이선스 파일을 넣어놓으면, 오픈소스 라이선스 정책을 적용받게 된다.
* 종류: GNU/GPL License, Apache Licenses, MIT License, BSD License 등
그림 1. Open Source Initiative 로고(승인된 라이선스)
[참고 사이트]
1. License 정책 정리하기
1-1. GNU Library or Lesser General Public License version 3.0 (LGPLv3)
라이브러리는 공유하되 개발된 제품에 대해서는 소스를 공개하지 않고 상용 SW 판매가 가능한 GPL 보다 완화된 라이선스를 말함.
“본 라이선스”는 이 라이선스는 GNU 일반 공중 라이선스 버전 3에 추가된 추가 허용 사항들로 구성된다.
GNU 약소 일반 공중 라이선스의 버전 3를 의미하며 GNU GPL은 GNU 일반 공중 라이선스의 버전3을 의미한다.
버전 : 3.0
관리기관 : Free Software Foundation
관련라이선스 : LGPL2.1, GPL2.0 GPL3.0
라이선스 계열 : GPL
웹사이트 바로가기 : http://www.opensource.org/licenses/lgpl-3.0.html
1-1-1. 라이선스 주요내용
1-1-2. 주요 특징 및 배포시 의무사항
* 주요 특징:
LGPL 라이브러리를 이용한 응용프로그램의 경우 소스코드 제공없이 배포가능
결합라이브러리 작성의 허용(제5조)
‘배포(distribution)’를 ‘컨베이(convey)’라는 용어로 대체
복제, 수정, 배포행위 등을 포함하는 ‘프로퍼게이트(propagate)' 용어 사용
‘해당 소스(corresponding source)에 인터페이스 정의 파일, 저작물의 서브프로그램과 다른 부분들 사이의 제어 흐름이나 밀접한 데이터 통신 등을 통해 저작물이 특별히 필요로 하는, 동적 링크된 하위 프로그램과 공유 라이브러리의 소스코드를 포함
기술적보호조치의 보호에 관한 법적 권리의 포기(제3조)
사용자제품에 대한 설치정보의 제공. “설치 정보”란 해당 소스의 수정본으로부터 발생한 사용자 제품 내의 저작물의 수정된 버전을 설치하고 실행하기 위한 모든 방법과 절차, 인증키, 기타 필요한 정보를 말함.(제6조)
추가적인 허용사항 또는 제약사항을 부가하는 것을 가능하도록 함(제7조)
차별적인 특허라이선스 계약체결의 금지(제11조)
Affero GPL과 결합하거나 연결하여 하나의 저작물을 만들 수 있도록 허용(제13조)
* 배포시 의무사항:
각 복제본에 저작권 고지와 보증책임이 없음을 명시
LGPL 3.0의 조건 및 제7조의 조건에 관한 내용을 있는 그대로 유지
프로그램을 양도 받는 모든 이들에게 프로그램과 함께 GPL 및 LGPL 라이선스 사본 제공
수정시 수정사실 및 일시를 명시
원본저작물과 파생저작물을 LGPL3.0에 의해 배포
원본저작물 및 파생저작물에 대한 소스코드를 제공하거나, 요청시 제공하겠다는 약정서 제공
사용자제품에 대한 인증키 등 설치정보의 제공
응용프로그램을 배포할 경우, LGPL 라이브러리를 사용하고 있다는 사실을 명시
사용자가 라이브러리를 수정해도 응용프로그램을 사용할 수 있도록 (예를 들어 오브젝트코드 등을 제공하거나 공유라이브러리 방식등을 이용하여) 허용
1-2. GNU General Public License (GPLv2)
자유 소프트웨어 재단(FSF)에서 만든 자유 소프트웨어 라이선스다.
미국의 리처드 스톨만(Richard Stallman)이 GNU-프로젝트로 배포된 프로그램의 라이선스로 사용하기 위해 작성했다.
'① 컴퓨터 프로그램을 어떤 목적으로든지 사용할 수 있다
② 컴퓨터 프로그램의 복사를 언제나 프로그램의 코드와 함께 판매 또는 무료로 배포할 수 있다
③ 컴퓨터 프로그램의 코드를 용도에 따라 결정할 수 있다
④ 변경된 컴퓨터 프로그램 역시 프로그램의 코드와 함께 자유로이 배포할 수 있다'라는 네 가지 조항을 명시하고 있다.
대부분의 소프트웨어에 대한 라이선스는 소프트웨어를 공유하거나 수정할 수 있는 자유를 금지하기 위 고안되었다.
반면에 GNU 일반 공중 라이선스는 자유 소프트웨어를 공유하고 수정할 수 있는 자유를 보장하기 위해 의도되었다.
즉, 소프트웨어가 사용자 모두에게 자유롭게 이용될 수 있도록 하는 것이다.
이 일반 공중 라이선스는 자유 소프트웨어 재단의 소프트웨어 대부분을 비롯하여, 저작자가 이 라이선스의 사용을 지정한 기타 모든 프로그램에 적용된다. (자유 소프트웨어 재단의 소프트웨어 중 일부는 이 라이선스 대신 GNU 라이브러리 일반 공중 라이선스가 적용된다.)
누구나 자신의 프로그램에 이 라이선스를 적용시킬 수 있다.
버전 : 2.0
관리기관 : Free Software Foundation, Inc
관련라이선스 : GPL 3.0, LGPL
라이선스 계열 : GPL
웹사이트 바로가기 : http://www.opensource.org/licenses/gpl-2.0.php
1-2-1. 라이선스 주요내용
1-2-2. 주요 특징 및 배포시 의무사항
* 주요 특징 및 배포시 의무사항
주요 특징:
소스코드는 실행물에 포함된 모든 모듈들의 소스 코드와 이와 관련된 인터페이스 정의 파일 전체, 그리고 실행물의 컴파일과 설치를 제어하는데 사용된 스크립트 전부를 의미
다만, 실행물이 실행되는 운영체제의 주요 부분(컴파일러, 커널 등)과 함께 (소스 코드나 바이너리의 형태로) 일반적으로 배포되는 구성요소들은, 그 구성요소 자체가 실행물에 수반되지 않는 한 배포되는 소스 코드에 포함되지 않아도 무방
서브라이선스를 허용하지 않음. 다만 제6조에 의해 수취인은 자동적으로 라이선스를 취득
법원의 판결, 특허침해 등에 의해 라이선스 조건을 준수할 수 없는 경우, GPL에 의한 배포 불가능(제7조)
* 배포시 의무사항:
각 복제본에 적절한 저작권 고지와 보증책임이 없음을 명시
GPL 라이선스를 언급하는 고지사항과 보증책임 관련 고지사항을 원본 그대로 유지
프로그램을 양도 받는 모든 이들에게 프로그램과 함께 GPL 라이선스 사본 제공
파일 수정의 경우 수정사실과 날짜를 파일에 명기
원본저작물과 파생저작물을 GPL 2.0에 의해 배포
원본저작물 및 파생저작물에 대한 소스코드를 제공하거나, 요청시 제공하겠다는 약정서 제공
1-3. Apache License v2
아파치 라이선스는 아파치 웹서버의 배포를 위해 만들어진 라이선스이다.
아파치 재단이나 재단의 프로젝트에 의해서 만들어진 모든 소프트웨어는 현재 Apache License 2.0에 의해 배포되고 있다.
버전 : 2.0
관리기관 : 아파치 소프트웨어 재단
관련라이선스 : Apache-1.1
라이선스 계열 : BSD
웹사이트 바로가기 : http://www.apache.org/licenses/LICENSE-2.0
1-3-1. 라이선스 주요내용
1-3-2. 주요 특징 및 배포시 의무사항
* 주요 특징:
라이센서에게 Contribution 하는 경우 Apache 라이선스를 따름
* 배포시 의무사항:
수취인에게 라이선스 사본 제공
수정된 파일에 대해 수정사항을 표시한 안내문구 첨부
저작권, 특허, 상표, attribution에 대한 고지사항을 소스코드 또는 "NOTICE" 파일 등에 포함
최초개발자 등을 위해 보증을 면제하고, 책임을 제한
1-4. MIT License
MIT 라이선스(MIT License)는 미국 매사추세츠 공과대학교(MIT)에서 해당 대학의 소프트웨어 공학도들을 돕기 위해 개발한 라이선스다. MIT 라이선스를 따르는 소프트웨어를 개조한 제품을 반드시 오픈 소스로 배포해야 한다는 규정이 없으며 GNU 일반 공중 라이선스의 엄격함을 피하려는 사용자들에게 인기가 있다. 이 라이선스를 따르는 대표적 소프트웨어로 X 윈도 시스템이 있다.
관리기관 : Massachusetts Institute of Technology
라이선스 계열 : BSD
웹사이트 바로가기 : https://opensource.org/licenses/MIT
1-4-1. 라이선스 주요내용
1-4-2. 주요 특징 및 배포시 의무사항
* 주요 특징:
배포시 의무사항:
저작권 안내문구, MIT 라이선스 문구가 모든 복제본에 포함
2. GNU/GPL v3 License
https://www.gnu.org/licenses/gpl-3.0.html
[첨부(Attachments)]
3. GNU/GPL v2, v1 License(이전 버전)
https://www.gnu.org/licenses/old-licenses/old-licenses.html#GPL
[첨부(Attachments)]
4. Apache License
https://www.apache.org/licenses/LICENSE-2.0
* 업무에 APACHE 라이센스를 적용하는 방법(HOW TO APPLY THE APACHE LICENSE TO YOUR WORK)
일반적으로 LICENSE라는 파일에 Apache 라이선스의 사본을 작업에 포함하고 NOTICE 파일도 포함해야합니다.
작업의 특정 파일에 Apache 라이선스를 적용하려면 다음과 같은 상용구 선언을 첨부하고 괄호 "[]"로 묶인 필드를 고유 한 식별 정보로 바꿉니다.
(괄호를 포함하지 마십시오!) 텍스트는 파일 형식에 적합한 주석 구문으로 묶어야합니다. 또한 타사 아카이브 내에서 쉽게 식별 할 수 있도록 파일 또는 클래스 이름과 목적 설명을 저작권 고지와 동일한 "인쇄 된 페이지"에 포함하는 것이 좋습니다.
Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and
[첨부(Attachments)]
5. MIT License
https://opensource.org/licenses/MIT
Copyright <YEAR> <COPYRIGHT HOLDER>
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
[첨부(Attachments)]
'공부(Study) > 컴퓨터 - PC활용' 카테고리의 다른 글
[컴퓨터 - PC활용] 형상관리 - Eclipse SVN과 연동[클라이언트 사용](2) (4) | 2020.09.19 |
---|---|
[컴퓨터 - PC활용] 형상관리 - Visual SVN Server 서버 설치(1) (3) | 2020.09.19 |
[컴퓨터 - PC활용] 파일질라(FileZilla) FTP Client/Server(클라이언트/서버) (3) | 2020.09.19 |
[컴퓨터 - PC활용] Eclipse에서 git 프로젝트 import하기(가져오기) (3) | 2020.09.19 |
[컴퓨터 - PC활용] Eclipse에서 git 설치 및 push하기 (150) | 2020.09.19 |