티스토리 뷰
GPLv2, GPLv3
Free Software Foundation에서 만든 License
가장 강력한 제약조건을 가진 Copyleft License
SW를 수정하거나 라이브러리를 링크(Static과 Dynamic linking)하는 경우 개발된 SW를 공개하고 GPL로 배포해야 합니다.
기업 입장에서는 영업 비밀(성능 개선, 핵심 기술)을 포함한 소스코드를 반드시 공개해야 하므로 기업의 영업 전략과 상충될 수 있습니다.
GPLv2 사례로 Linex Kernel, MariaDB, WordPress 등이 있습니다.
GPL version 2.0
저작관 고지
소스 공개
소스 코드 유료 판매 가능
저작권 유지
GPL version 3.0
Tivoization 조항 추가(해당 소스에 설치정보를 함께 제공)
특허 조항 추가(free royalty, 특허 보복 조항)
다른 라이선스와의 호환성 조항 추가(Apache License 2.0, Affero GPL 3.0과 양립 가능)
2. LGPL 2.1
FSF에서 공개 SW의 사용을 장려하기 위한 전략적인 차원에서 LGPL 정의
응용프로그램이 LGPL 라이브러리를 링크하는 경우(Static과 Dynamic Linking 모두)
응용프로그램의 소스코드 공개 의무 없음 -> 따라서 기업입장에서는 GPL보다 LGPL을 선호
3. MPL
Netscape 브라우저의 소스코드를 공개하기 위해 개발된 License
MPL로 공개된 코드 수정시 MPL에 의해 소스 코드 제공
GPL과 달리 추가한 파일의 소스 코드는 공개 의무가 없음
MPL로 공개된 코드와 다른 License 코드의 결합 허용
결합된 프로그램은 MPL이 아닌 다른 License로 배포 허용
MPL 코드를 제외한 소스 공개 의무 없음
특허 기술이 구현된 프로그램의 경우 관련 사실을 LEGAL파일에 기록하여 배포
4. BSD
소스 코드 공개 의무가 없는 대표적인 License(미국 정부의 재원으로 운영)
누구라도 BSD 기반 소스 코드를 이용하여 새로운 프로그램을 개발한 후, 소스 코드를 공개하지 않고 판매 가능
상용 소프트웨어에서 무제한 사용
MIT License와 유사한 권리를 가짐
5. Apache License 2.0
Apache 웹서버를 포함한 Apache재단(ASF:Apache Software Foundation)의 모든 SW에 적용되는 License
Apache라는 이름에 대한 상표권을 침해하지 않아야 한다
특허권에 관한 내용이 포함되어 BSD License 보다는 좀 더 법적으로 완결된 내용
수정 소스 공개 의무 없음
Apache 상표권 침해 금지
특허 주장 불가(GPL 2.0과 양립불가, GPL 3.0과 양립 가능)
서로 다른 의무사항을 가진 공개 SW License는 의무사항 충돌로 인해 양립이 불가능한 경우가 발생할 수 있으므로 공개 SW 활용시 주의해야 한다
양립 불가능할 시 배포 불가능
MPL 2.0의 경우 secondary License를 GPL로 정의하여 GPL로 확대가능
6. 이중(Dual) License
원래의 License 외에 예외적 사용을 허용하는 License
개발자는 유리한 License를 선택하여 사용 가능
적용 사례
GPL or MIT 형식의 Dual License
해당 소스코드를 GPL로 가져오거나 MIT로 가져올 수 있다
자신이 개발하고 있는 SW가 상용 SW일 경우 소스코드 공개의무가 없는 MIT로 가져와서 사용할 수 있다
GPL or Commercial 형식의 Dual License
Commercial License의 구입을 통해 GPL의 소스코드 공개 등 의무사항 적용없이 상용 SW에 포함할 수 있다.
Ex) MySQL은 GPL 2.0으로 배포되고 있으나, 상용SW에 MySQL을 포함할 경우에는 상용 License를 구입하도록 하고 있다.
'OSS' 카테고리의 다른 글
Linux Command (0) | 2018.11.20 |
---|---|
Linux System Administration(Boot/Shutdown) (0) | 2018.11.20 |
Linux Introduction (0) | 2018.11.20 |
OSS 정리1 (0) | 2018.11.06 |
OSS (0) | 2018.10.29 |