MPL
IT위키
더 많은 작업
MPL(Mozilla Public License, 모질라 공개 라이선스)은 모질라 재단이 관리하는 오픈 소스 라이선스로, 수정한 소스를 파일 단위로만 공개하게 하는 약한 카피레프트 라이선스이다.
1998년 넷스케이프가 웹 브라우저 소스를 공개하면서 만든 NPL 에서 나왔다. 지금 쓰는 판은 2012년에 나온 MPL 2.0 이다. 파이어폭스·썬더버드 같은 모질라 제품과 LibreOffice 일부 등이 MPL 을 쓴다.
MPL 의 의무는 MPL 이 붙은 파일에만 걸린다. 그 파일을 고쳐 배포하면 고친 파일의 소스를 MPL 로 공개해야 하지만, 같은 프로그램 안에 새로 만들어 넣은 다른 파일은 다른 라이선스(비공개 상용 라이선스 포함)로 둘 수 있다. 그래서 GPL 처럼 프로그램 전체를 공개하게 하는 강한 카피레프트와, BSD·MIT 처럼 공개 의무가 아예 없는 허용형(permissive) 라이선스의 중간에 놓인다 → 카피레프트 라이선스
- 사용·복제·수정·배포·판매를 허용한다
- MPL 로 받은 파일을 수정해 배포하면 그 파일의 소스 코드를 공개하고 MPL 을 그대로 유지해야 한다. 소스는 바이너리를 받는 사람이 얻을 수 있게 해야 한다
- MPL 파일과 다른 파일을 합친 더 큰 저작물(Larger Work)은 다른 라이선스로 배포할 수 있다. 새 파일의 소스는 공개하지 않아도 된다
- 저작권·라이선스 고지를 지우면 안 된다
- 기여자의 특허 사용을 허락하고, 특허 소송을 걸면 그 허락이 끝나는 조항이 있다
- MPL 2.0 은 GPL·LGPL 과 호환된다(파일에 호환되지 않음을 따로 표시하지 않은 한). MPL 1.1 은 GPL 과 호환되지 않았다
2차적 저작물(수정본)의 소스를 공개하지 않아도 되는가가 시험에 자주 나온다.
| 라이선스 | 유형 | 수정본 소스 공개 의무 | 비공개 가능? |
|---|---|---|---|
| GPL | 강한 카피레프트 | 프로그램 전체 | 불가 |
| LGPL | 약한 카피레프트 | 라이브러리를 수정한 부분 | 라이브러리를 고치면 불가, 링크만 한 프로그램은 가능 |
| MPL | 약한 카피레프트 | 수정한 MPL 파일 | 고친 MPL 파일은 불가, 새로 만든 다른 파일은 가능 |
| BSD 라이선스 | 허용형 | 없음 | 가능 |
| MIT 라이선스 | 허용형 | 없음 | 가능 |
| Apache License 2.0 | 허용형 | 없음(변경 사실 고지는 필요) | 가능 |
- 그래서 "수정해 만든 2차적 저작물의 소스를 비공개할 수 있는 라이선스" 를 고르는 문제에서 BSD·MIT·Apache 는 맞고 MPL 은 틀리다
- MPL 의 공개 단위는 파일이고, LGPL 은 라이브러리, GPL 은 프로그램 전체다